Files
lti-api/docs/openapi/read-api.yaml
2026-05-11 10:43:15 +07:00

6381 lines
232 KiB
YAML

components:
schemas:
ErrorEnvelope:
properties:
code:
example: 401
type: integer
errors:
additionalProperties: true
type: object
message:
example: Please authenticate
type: string
status:
example: error
type: string
type: object
PaginatedEnvelope:
properties:
code:
example: 200
type: integer
data:
items:
additionalProperties: true
type: object
type: array
message:
example: Request completed successfully
type: string
meta:
properties:
limit:
example: 10
type: integer
page:
example: 1
type: integer
total_pages:
example: 1
type: integer
total_results:
example: 0
type: integer
type: object
status:
example: success
type: string
type: object
SuccessEnvelope:
properties:
code:
example: 200
type: integer
data:
additionalProperties: true
type: object
message:
example: Request completed successfully
type: string
status:
example: success
type: string
type: object
securitySchemes:
ApiKeyAuth:
in: header
name: X-API-Key
type: apiKey
BearerAuth:
scheme: bearer
type: http
info:
description: Read-only OpenAPI surface for dashboard integrations and GET endpoint exploration.
title: LTI ERP Read API
version: v1
openapi: 3.1.0
paths:
/api/approvals/:
get:
description: Read access to `/api/approvals`.
parameters:
- description: Approval workflow module name.
example: EXPENSES
in: query
name: module_name
required: true
schema:
type: string
- description: Optional approvable module id.
example: 1
in: query
name: module_id
required: false
schema:
type: integer
- description: Group approval records by step number.
example: false
in: query
name: group_step_number
required: false
schema:
type: string
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: approval
in: query
name: search
required: false
schema:
type: string
- description: Sort direction by date.
example: DESC
in: query
name: order_by_date
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / approvals
tags:
- API
/api/closings/:
get:
description: Read access to `/api/closings`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: kandang
in: query
name: search
required: false
schema:
type: string
- description: Project status filter (1 or 2).
example: 1
in: query
name: project_status
required: false
schema:
type: integer
- description: Location id filter.
example: 1
in: query
name: location_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings
tags:
- API
/api/closings/{project_flock_id}/{project_flock_kandang_id}/expedition-hpp:
get:
description: Read access to `/api/closings/:project_flock_id/:project_flock_kandang_id/expedition-hpp`.
parameters:
- description: Path parameter `project_flock_id`.
in: path
name: project_flock_id
required: true
schema:
example: "1"
type: string
- description: Path parameter `project_flock_kandang_id`.
in: path
name: project_flock_kandang_id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :project_flock_id / :project_flock_kandang_id / expedition hpp
tags:
- Closings
/api/closings/{project_flock_id}/{project_flock_kandang_id}/keuangan:
get:
description: Read access to `/api/closings/:project_flock_id/:project_flock_kandang_id/keuangan`.
parameters:
- description: Path parameter `project_flock_id`.
in: path
name: project_flock_id
required: true
schema:
example: "1"
type: string
- description: Path parameter `project_flock_kandang_id`.
in: path
name: project_flock_kandang_id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :project_flock_id / :project_flock_kandang_id / keuangan
tags:
- Closings
/api/closings/{project_flock_id}/{project_flock_kandang_id}/overhead:
get:
description: Read access to `/api/closings/:project_flock_id/:project_flock_kandang_id/overhead`.
parameters:
- description: Path parameter `project_flock_id`.
in: path
name: project_flock_id
required: true
schema:
example: "1"
type: string
- description: Path parameter `project_flock_kandang_id`.
in: path
name: project_flock_kandang_id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :project_flock_id / :project_flock_kandang_id / overhead
tags:
- Closings
/api/closings/{project_flock_id}/{project_flock_kandang_id}/penjualan:
get:
description: Read access to `/api/closings/:project_flock_id/:project_flock_kandang_id/penjualan`.
parameters:
- description: Path parameter `project_flock_id`.
in: path
name: project_flock_id
required: true
schema:
example: "1"
type: string
- description: Path parameter `project_flock_kandang_id`.
in: path
name: project_flock_kandang_id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :project_flock_id / :project_flock_kandang_id / penjualan
tags:
- Closings
/api/closings/{project_flock_id}/{project_flock_kandang_id}/perhitungan_sapronak:
get:
description: Read access to `/api/closings/:project_flock_id/:project_flock_kandang_id/perhitungan_sapronak`.
parameters:
- description: Path parameter `project_flock_id`.
in: path
name: project_flock_id
required: true
schema:
example: "1"
type: string
- description: Path parameter `project_flock_kandang_id`.
in: path
name: project_flock_kandang_id
required: true
schema:
example: "1"
type: string
- description: Product category flag filter (DOC/OVK/PAKAN/PULLET).
example: DOC
in: query
name: flag
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :project_flock_id / :project_flock_kandang_id / perhitungan_sapronak
tags:
- Closings
/api/closings/{project_flock_id}/expedition-hpp:
get:
description: Read access to `/api/closings/:project_flock_id/expedition-hpp`.
parameters:
- description: Path parameter `project_flock_id`.
in: path
name: project_flock_id
required: true
schema:
example: "1"
type: string
- description: Optional project flock kandang id filter.
example: 1
in: query
name: project_flock_kandang_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :project_flock_id / expedition hpp
tags:
- Closings
/api/closings/{project_flock_id}/overhead:
get:
description: Read access to `/api/closings/:project_flock_id/overhead`.
parameters:
- description: Path parameter `project_flock_id`.
in: path
name: project_flock_id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :project_flock_id / overhead
tags:
- Closings
/api/closings/{project_flock_id}/penjualan:
get:
description: Read access to `/api/closings/:project_flock_id/penjualan`.
parameters:
- description: Path parameter `project_flock_id`.
in: path
name: project_flock_id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :project_flock_id / penjualan
tags:
- Closings
/api/closings/{project_flock_id}/perhitungan_sapronak:
get:
description: Read access to `/api/closings/:project_flock_id/perhitungan_sapronak`.
parameters:
- description: Path parameter `project_flock_id`.
in: path
name: project_flock_id
required: true
schema:
example: "1"
type: string
- description: Product category flag filter (DOC/OVK/PAKAN/PULLET).
example: DOC
in: query
name: flag
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :project_flock_id / perhitungan_sapronak
tags:
- Closings
/api/closings/{projectFlockId}:
get:
description: Read access to `/api/closings/:projectFlockId`.
parameters:
- description: Path parameter `projectFlockId`.
in: path
name: projectFlockId
required: true
schema:
example: "1"
type: string
- description: Optional kandang id filter.
example: 1
in: query
name: kandang_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :projectFlockId
tags:
- Closings
/api/closings/{projectFlockId}/keuangan:
get:
description: Read access to `/api/closings/:projectFlockId/keuangan`.
parameters:
- description: Path parameter `projectFlockId`.
in: path
name: projectFlockId
required: true
schema:
example: "1"
type: string
- description: Optional kandang id filter.
example: 1
in: query
name: kandang_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :projectFlockId / keuangan
tags:
- Closings
/api/closings/{projectFlockId}/production-data:
get:
description: Read access to `/api/closings/:projectFlockId/production-data`.
parameters:
- description: Path parameter `projectFlockId`.
in: path
name: projectFlockId
required: true
schema:
example: "1"
type: string
- description: Optional kandang id filter.
example: 1
in: query
name: kandang_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :projectFlockId / production data
tags:
- Closings
/api/closings/{projectFlockId}/sapronak:
get:
description: Read access to `/api/closings/:projectFlockId/sapronak`.
parameters:
- description: Path parameter `projectFlockId`.
in: path
name: projectFlockId
required: true
schema:
example: "1"
type: string
- description: Required sapronak direction.
example: incoming
in: query
name: type
required: true
schema:
type: string
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: pakan
in: query
name: search
required: false
schema:
type: string
- description: Optional kandang id filter.
example: 1
in: query
name: kandang_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :projectFlockId / sapronak
tags:
- Closings
/api/closings/{projectFlockId}/sapronak/summary:
get:
description: Read access to `/api/closings/:projectFlockId/sapronak/summary`.
parameters:
- description: Path parameter `projectFlockId`.
in: path
name: projectFlockId
required: true
schema:
example: "1"
type: string
- description: Required sapronak direction.
example: incoming
in: query
name: type
required: true
schema:
type: string
- description: Search keyword.
example: pakan
in: query
name: search
required: false
schema:
type: string
- description: Optional kandang id filter.
example: 1
in: query
name: kandang_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / closings / :projectFlockId / sapronak / summary
tags:
- Closings
/api/constants/:
get:
description: Read access to `/api/constants`.
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
summary: GET api / constants
tags:
- API
/api/daily-checklists/:
get:
description: Read access to `/api/daily-checklists`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: kebersihan
in: query
name: search
required: false
schema:
type: string
- description: Start date filter (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: date_from
required: false
schema:
type: string
- description: End date filter (YYYY-MM-DD).
example: "2026-01-31"
in: query
name: date_to
required: false
schema:
type: string
- description: Checklist status filter.
example: done
in: query
name: status
required: false
schema:
type: string
- description: Kandang id filter.
example: 1
in: query
name: kandang_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / daily checklists
tags:
- Daily Checklists
/api/daily-checklists/phase/{idDailyChecklist}:
get:
description: Read access to `/api/daily-checklists/phase/:idDailyChecklist`.
parameters:
- description: Path parameter `idDailyChecklist`.
in: path
name: idDailyChecklist
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / daily checklists / phase / :idDailyChecklist
tags:
- Daily Checklists
/api/daily-checklists/relation/{idDailyChecklist}:
get:
description: Read access to `/api/daily-checklists/relation/:idDailyChecklist`.
parameters:
- description: Path parameter `idDailyChecklist`.
in: path
name: idDailyChecklist
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / daily checklists / relation / :idDailyChecklist
tags:
- Daily Checklists
/api/daily-checklists/report:
get:
description: Read access to `/api/daily-checklists/report`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: true
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: true
schema:
type: integer
- description: Month number (1-12).
example: 1
in: query
name: bulan
required: true
schema:
type: integer
- description: Year.
example: 2026
in: query
name: tahun
required: true
schema:
type: integer
- description: Area id filter.
example: 1
in: query
name: area_id
required: false
schema:
type: integer
- description: Location id filter.
example: 1
in: query
name: location_id
required: false
schema:
type: integer
- description: Kandang id filter.
example: 1
in: query
name: kandang_id
required: false
schema:
type: integer
- description: Employee id filter.
example: 1
in: query
name: employee_id
required: false
schema:
type: integer
- description: Phase id filter.
example: 1
in: query
name: phase_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / daily checklists / report
tags:
- Daily Checklists
/api/daily-checklists/summary:
get:
description: Read access to `/api/daily-checklists/summary`.
parameters:
- description: Start date filter (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: date_from
required: true
schema:
type: string
- description: End date filter (YYYY-MM-DD).
example: "2026-01-31"
in: query
name: date_to
required: true
schema:
type: string
- description: Checklist category filter.
example: cleaning
in: query
name: category
required: false
schema:
type: string
- description: Kandang id filter.
example: 1
in: query
name: kandang_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / daily checklists / summary
tags:
- Daily Checklists
/api/daily-checklists/tasks:
get:
description: Read access to `/api/daily-checklists/tasks`.
parameters:
- description: Daily checklist id.
example: 1
in: query
name: checklist_id
required: true
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / daily checklists / tasks
tags:
- Daily Checklists
/api/dashboards/:
get:
description: Read access to `/api/dashboards`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: farm
in: query
name: search
required: false
schema:
type: string
- description: Period start date (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: start_date
required: false
schema:
type: string
- description: Period end date (YYYY-MM-DD).
example: "2026-01-31"
in: query
name: end_date
required: false
schema:
type: string
- description: Dashboard analysis mode.
example: OVERVIEW
in: query
name: analysis_mode
required: false
schema:
type: string
- description: Required when analysis_mode is COMPARISON.
example: PREVIOUS_PERIOD
in: query
name: comparison_type
required: false
schema:
type: string
- description: Metric to compare.
example: egg_mass
in: query
name: metric
required: false
schema:
type: string
- description: Comma separated location ids.
example: 1,2
in: query
name: location_ids
required: false
schema:
type: string
- description: Comma separated flock ids.
example: 1,2
in: query
name: flock_ids
required: false
schema:
type: string
- description: Comma separated kandang ids.
example: 1,2
in: query
name: kandang_ids
required: false
schema:
type: string
- description: Comma separated dashboard sections to include.
example: performance,summary
in: query
name: include
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / dashboards
tags:
- Dashboards
/api/expenses/:
get:
description: Read access to `/api/expenses`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: operasional
in: query
name: search
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / expenses
tags:
- Expenses
/api/expenses/{id}:
get:
description: Read access to `/api/expenses/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / expenses / :id
tags:
- Expenses
/api/finance/initial-balances/{id}:
get:
description: Read access to `/api/finance/initial-balances/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / finance / initial balances / :id
tags:
- Finance
/api/finance/injections/{id}:
get:
description: Read access to `/api/finance/injections/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / finance / injections / :id
tags:
- Finance
/api/finance/payments/{id}:
get:
description: Read access to `/api/finance/payments/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / finance / payments / :id
tags:
- Finance
/api/finance/transactions/:
get:
description: Read access to `/api/finance/transactions`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: invoice
in: query
name: search
required: false
schema:
type: string
- description: Comma separated bank ids.
example: 1,2
in: query
name: bank_ids
required: false
schema:
type: string
- description: Comma separated customer ids.
example: 1,2
in: query
name: customer_ids
required: false
schema:
type: string
- description: Comma separated supplier ids.
example: 1,2
in: query
name: supplier_ids
required: false
schema:
type: string
- description: Comma separated transaction types.
example: payment,initial_balance
in: query
name: transaction_types
required: false
schema:
type: string
- description: Sort date basis.
example: created_at
in: query
name: sort_date
required: false
schema:
type: string
- description: Start date (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: start_date
required: false
schema:
type: string
- description: End date (YYYY-MM-DD).
example: "2026-01-31"
in: query
name: end_date
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / finance / transactions
tags:
- Finance
/api/finance/transactions/{id}:
get:
description: Read access to `/api/finance/transactions/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / finance / transactions / :id
tags:
- Finance
/api/inventory/adjustments/:
get:
description: Read access to `/api/inventory/adjustments`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Product id filter.
example: 1
in: query
name: product_id
required: false
schema:
type: integer
- description: Warehouse id filter.
example: 1
in: query
name: warehouse_id
required: false
schema:
type: integer
- description: Transaction type filter.
example: IN
in: query
name: transaction_type
required: false
schema:
type: string
- description: Transaction subtype filter.
example: ADJUSTMENT
in: query
name: transaction_subtype
required: false
schema:
type: string
- description: Function code filter.
example: MANUAL_ADJUSTMENT
in: query
name: function_code
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / inventory / adjustments
tags:
- Inventory
/api/inventory/adjustments/{id}:
get:
description: Read access to `/api/inventory/adjustments/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / inventory / adjustments / :id
tags:
- Inventory
/api/inventory/product-stocks/:
get:
description: Read access to `/api/inventory/product-stocks`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: pakan
in: query
name: search
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / inventory / product stocks
tags:
- Inventory
/api/inventory/product-stocks/{id}:
get:
description: Read access to `/api/inventory/product-stocks/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / inventory / product stocks / :id
tags:
- Inventory
/api/inventory/product-warehouses/:
get:
description: Read access to `/api/inventory/product-warehouses`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: gudang
in: query
name: search
required: false
schema:
type: string
- description: Product id filter.
example: 1
in: query
name: product_id
required: false
schema:
type: integer
- description: Warehouse id filter.
example: 1
in: query
name: warehouse_id
required: false
schema:
type: integer
- description: Location id filter.
example: 1
in: query
name: location_id
required: false
schema:
type: integer
- description: Stock flags filter.
example: DOC
in: query
name: flags
required: false
schema:
type: string
- description: Kandang id filter.
example: 1
in: query
name: kandang_id
required: false
schema:
type: integer
- description: Show available stock only.
example: true
in: query
name: available_only
required: false
schema:
type: string
- description: Transfer context filter.
example: inventory_transfer
in: query
name: transfer_context
required: false
schema:
type: string
- description: Stock mode filter.
example: exclude_chickin
in: query
name: stock_mode
required: false
schema:
type: string
- description: Warehouse stock type filter.
example: incoming
in: query
name: type
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / inventory / product warehouses
tags:
- Inventory
/api/inventory/product-warehouses/{id}:
get:
description: Read access to `/api/inventory/product-warehouses/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / inventory / product warehouses / :id
tags:
- Inventory
/api/inventory/stock-logs/:
get:
description: Read access to `/api/inventory/stock-logs`.
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / inventory / stock logs
tags:
- Inventory
/api/inventory/transfers/:
get:
description: Read access to `/api/inventory/transfers`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: TRF
in: query
name: search
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / inventory / transfers
tags:
- Inventory
/api/inventory/transfers/{id}:
get:
description: Read access to `/api/inventory/transfers/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / inventory / transfers / :id
tags:
- Inventory
/api/marketing/:
get:
description: Read access to `/api/marketing`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: delivery
in: query
name: search
required: false
schema:
type: string
- description: Comma separated product ids.
example: 1,2
in: query
name: product_ids
required: false
schema:
type: string
- description: Delivery status filter.
example: DRAFT
in: query
name: status
required: false
schema:
type: string
- description: Customer id filter.
example: 1
in: query
name: customer_id
required: false
schema:
type: integer
- description: Marketing id filter.
example: 1
in: query
name: marketing_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / marketing
tags:
- Marketing
/api/marketing/{id}:
get:
description: Read access to `/api/marketing/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / marketing / :id
tags:
- Marketing
/api/master-data/areas/:
get:
description: Read access to `/api/master-data/areas`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: bandung
in: query
name: search
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / areas
tags:
- Master Data
/api/master-data/areas/{id}:
get:
description: Read access to `/api/master-data/areas/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / areas / :id
tags:
- Master Data
/api/master-data/banks/:
get:
description: Read access to `/api/master-data/banks`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: bca
in: query
name: search
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / banks
tags:
- Master Data
/api/master-data/banks/{id}:
get:
description: Read access to `/api/master-data/banks/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / banks / :id
tags:
- Master Data
/api/master-data/config-checklists/:
get:
description: Read access to `/api/master-data/config-checklists`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: harian
in: query
name: search
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / config checklists
tags:
- Master Data
/api/master-data/config-checklists/{id}:
get:
description: Read access to `/api/master-data/config-checklists/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / config checklists / :id
tags:
- Master Data
/api/master-data/customers/:
get:
description: Read access to `/api/master-data/customers`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: pt
in: query
name: search
required: false
schema:
type: string
- description: Filter customer by marketing relation.
example: true
in: query
name: has_marketing
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / customers
tags:
- Master Data
/api/master-data/customers/{id}:
get:
description: Read access to `/api/master-data/customers/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / customers / :id
tags:
- Master Data
/api/master-data/employees/:
get:
description: Read access to `/api/master-data/employees`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: andi
in: query
name: search
required: false
schema:
type: string
- description: Kandang id filter.
example: 1
in: query
name: kandang_id
required: false
schema:
type: integer
- description: Active status filter.
example: true
in: query
name: is_active
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / employees
tags:
- Master Data
/api/master-data/employees/{id}:
get:
description: Read access to `/api/master-data/employees/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / employees / :id
tags:
- Master Data
/api/master-data/fcrs/:
get:
description: Read access to `/api/master-data/fcrs`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: fcr
in: query
name: search
required: false
schema:
type: string
responses:
"200":
content:
application/json:
example:
code: 200
data:
- created_at: "2026-01-01T00:00:00Z"
created_user:
id: 1
name: Admin
id: 1
name: FCR Broiler Standard
updated_at: "2026-01-01T00:00:00Z"
message: Get all fcrs successfully
meta:
limit: 10
page: 1
total_pages: 1
total_results: 1
status: success
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / fcrs
tags:
- Master Data
/api/master-data/fcrs/{id}:
get:
description: Read access to `/api/master-data/fcrs/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
example:
code: 200
data:
created_at: "2026-01-01T00:00:00Z"
created_user:
id: 1
name: Admin
fcr_standards:
- fcr_number: 1.2
id: 1
mortality: 0.5
weight: 0.5
- fcr_number: 1.35
id: 2
mortality: 0.3
weight: 1
- fcr_number: 1.5
id: 3
mortality: 0.25
weight: 1.5
id: 1
name: FCR Broiler Standard
updated_at: "2026-01-01T00:00:00Z"
message: Get fcr successfully
status: success
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / fcrs / :id
tags:
- Master Data
/api/master-data/flocks/:
get:
description: Read access to `/api/master-data/flocks`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: layer
in: query
name: search
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / flocks
tags:
- Master Data
/api/master-data/flocks/{id}:
get:
description: Read access to `/api/master-data/flocks/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / flocks / :id
tags:
- Master Data
/api/master-data/kandang-groups/:
get:
description: Read access to `/api/master-data/kandang-groups`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: blok
in: query
name: search
required: false
schema:
type: string
- description: Location id filter.
example: 1
in: query
name: location_id
required: false
schema:
type: integer
- description: Person in charge id filter.
example: 1
in: query
name: pic_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / kandang groups
tags:
- Master Data
/api/master-data/kandang-groups/{id}:
get:
description: Read access to `/api/master-data/kandang-groups/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / kandang groups / :id
tags:
- Master Data
/api/master-data/kandangs/:
get:
description: Read access to `/api/master-data/kandangs`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: kandang
in: query
name: search
required: false
schema:
type: string
- description: Location id filter.
example: 1
in: query
name: location_id
required: false
schema:
type: integer
- description: Person in charge id filter.
example: 1
in: query
name: pic_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / kandangs
tags:
- Master Data
/api/master-data/kandangs/{id}:
get:
description: Read access to `/api/master-data/kandangs/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / kandangs / :id
tags:
- Master Data
/api/master-data/locations/:
get:
description: Read access to `/api/master-data/locations`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: farm
in: query
name: search
required: false
schema:
type: string
- description: Area id filter.
example: 1
in: query
name: area_id
required: false
schema:
type: integer
- description: Filter laying locations only.
example: false
in: query
name: has_laying
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / locations
tags:
- Master Data
/api/master-data/locations/{id}:
get:
description: Read access to `/api/master-data/locations/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / locations / :id
tags:
- Master Data
/api/master-data/nonstocks/:
get:
description: Read access to `/api/master-data/nonstocks`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: vitamin
in: query
name: search
required: false
schema:
type: string
- description: Supplier id filter.
example: 1
in: query
name: supplier_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / nonstocks
tags:
- Master Data
/api/master-data/nonstocks/{id}:
get:
description: Read access to `/api/master-data/nonstocks/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / nonstocks / :id
tags:
- Master Data
/api/master-data/phase-activities/:
get:
description: Read access to `/api/master-data/phase-activities`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: cek pakan
in: query
name: search
required: false
schema:
type: string
- description: Comma separated phase ids.
example: 1,2
in: query
name: phase_ids
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / phase activities
tags:
- Master Data
/api/master-data/phase-activities/{id}:
get:
description: Read access to `/api/master-data/phase-activities/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / phase activities / :id
tags:
- Master Data
/api/master-data/phases/:
get:
description: Read access to `/api/master-data/phases`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: starter
in: query
name: search
required: false
schema:
type: string
- description: Phase category filter.
example: Growing
in: query
name: category
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / phases
tags:
- Master Data
/api/master-data/phases/{id}:
get:
description: Read access to `/api/master-data/phases/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / phases / :id
tags:
- Master Data
/api/master-data/product-categories/:
get:
description: Read access to `/api/master-data/product-categories`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: pakan
in: query
name: search
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / product categories
tags:
- Master Data
/api/master-data/product-categories/{id}:
get:
description: Read access to `/api/master-data/product-categories/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / product categories / :id
tags:
- Master Data
/api/master-data/production-standards/:
get:
description: Read access to `/api/master-data/production-standards`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: standar
in: query
name: search
required: false
schema:
type: string
- description: Project category filter.
example: GROWING
in: query
name: project_category
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / production standards
tags:
- Master Data
/api/master-data/production-standards/{id}:
get:
description: Read access to `/api/master-data/production-standards/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / production standards / :id
tags:
- Master Data
/api/master-data/products/:
get:
description: Read access to `/api/master-data/products`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: jagung
in: query
name: search
required: false
schema:
type: string
- description: Product category id filter.
example: 1
in: query
name: product_category_id
required: false
schema:
type: integer
- description: Filter depletion products.
example: false
in: query
name: is_depletion
required: false
schema:
type: string
- description: Include all products regardless of status.
example: false
in: query
name: include_all
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / products
tags:
- Master Data
/api/master-data/products/{id}:
get:
description: Read access to `/api/master-data/products/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / products / :id
tags:
- Master Data
/api/master-data/suppliers/:
get:
description: Read access to `/api/master-data/suppliers`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: supplier
in: query
name: search
required: false
schema:
type: string
- description: Supplier type flag filter.
example: ACTIVE
in: query
name: flag
required: false
schema:
type: string
- description: Supplier category filter.
example: PAKAN
in: query
name: category
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / suppliers
tags:
- Master Data
/api/master-data/suppliers/{id}:
get:
description: Read access to `/api/master-data/suppliers/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / suppliers / :id
tags:
- Master Data
/api/master-data/uoms/:
get:
description: Read access to `/api/master-data/uoms`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: kg
in: query
name: search
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / uoms
tags:
- Master Data
/api/master-data/uoms/{id}:
get:
description: Read access to `/api/master-data/uoms/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / uoms / :id
tags:
- Master Data
/api/master-data/warehouses/:
get:
description: Read access to `/api/master-data/warehouses`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: gudang
in: query
name: search
required: false
schema:
type: string
- description: Area id filter.
example: 1
in: query
name: area_id
required: false
schema:
type: integer
- description: Location id filter.
example: 1
in: query
name: location_id
required: false
schema:
type: integer
- description: Filter only active project flock warehouses.
example: false
in: query
name: active_project_flock
required: false
schema:
type: string
- description: Transfer context filter.
example: inventory_transfer
in: query
name: transfer_context
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / warehouses
tags:
- Master Data
/api/master-data/warehouses/{id}:
get:
description: Read access to `/api/master-data/warehouses/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / master data / warehouses / :id
tags:
- Master Data
/api/production/chickins/:
get:
description: Read access to `/api/production/chickins`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Project flock kandang id filter.
example: 1
in: query
name: project_flock_kandang_id
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
example:
code: 200
data:
- chick_in_date: "2026-01-01T00:00:00Z"
created_at: "2026-01-01T00:00:00Z"
created_user:
id: 1
name: Admin
id: 1
notes: ""
pending_usage_qty: 0
product_warehouse:
id: 1
product:
id: 1
name: DOC Broiler
warehouse:
id: 1
name: Gudang DOC
product_warehouse_id: 1
project_flock_kandang_id: 1
updated_at: "2026-01-01T00:00:00Z"
usage_qty: 10000
message: Get all chickins successfully
meta:
limit: 10
page: 1
total_pages: 1
total_results: 1
status: success
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / chickins
tags:
- Production
/api/production/chickins/{id}:
get:
description: Read access to `/api/production/chickins/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / chickins / :id
tags:
- Production
/api/production/project-flock-kandangs/:
get:
description: Read access to `/api/production/project-flock-kandangs`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: kandang
in: query
name: search
required: false
schema:
type: string
- description: Return name-with-period projection.
example: false
in: query
name: name_with_periode
required: false
schema:
type: string
- description: Project flock id filter.
example: 1
in: query
name: project_flock_id
required: false
schema:
type: integer
- description: Kandang id filter.
example: 1
in: query
name: kandang_id
required: false
schema:
type: integer
- description: Project category filter.
example: Growing
in: query
name: category
required: false
schema:
type: string
- description: Area id filter.
example: 1
in: query
name: area_id
required: false
schema:
type: integer
- description: Location id filter.
example: 1
in: query
name: location_id
required: false
schema:
type: integer
- description: Sort field.
example: created_at
in: query
name: sort_by
required: false
schema:
type: string
- description: Sort order.
example: ASC
in: query
name: sort_order
required: false
schema:
type: string
- description: Approval step name filter.
example: Pengajuan
in: query
name: step_name
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / project flock kandangs
tags:
- Production
/api/production/project-flock-kandangs/{id}:
get:
description: Read access to `/api/production/project-flock-kandangs/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / project flock kandangs / :id
tags:
- Production
/api/production/project-flock-kandangs/{id}/closing/check:
get:
description: Read access to `/api/production/project-flock-kandangs/:id/closing/check`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / project flock kandangs / :id / closing / check
tags:
- Production
/api/production/project-flocks/:
get:
description: Read access to `/api/production/project-flocks`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: flock
in: query
name: search
required: false
schema:
type: string
- description: Sort field.
example: created_at
in: query
name: sort_by
required: false
schema:
type: string
- description: Sort order.
example: asc
in: query
name: sort_order
required: false
schema:
type: string
- description: Area id filter.
example: 1
in: query
name: area_id
required: false
schema:
type: integer
- description: Location id filter.
example: 1
in: query
name: location_id
required: false
schema:
type: integer
- description: Project period filter.
example: 1
in: query
name: period
required: false
schema:
type: integer
- description: Project category filter.
example: Growing
in: query
name: category
required: false
schema:
type: string
- description: Project status filter.
example: Aktif
in: query
name: status
required: false
schema:
type: string
- description: Comma separated kandang ids.
example: 1,2
in: query
name: kandang_id
required: false
schema:
type: string
- description: Transfer context filter.
example: transfer_to_laying
in: query
name: transfer_context
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / project flocks
tags:
- Production
/api/production/project-flocks/{id}:
get:
description: Read access to `/api/production/project-flocks/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / project flocks / :id
tags:
- Production
/api/production/project-flocks/kandangs/lookup:
get:
description: Read access to `/api/production/project-flocks/kandangs/lookup`.
parameters:
- description: Project flock id.
example: 1
in: query
name: project_flock_id
required: true
schema:
type: integer
- description: Kandang id.
example: 1
in: query
name: kandang_id
required: true
schema:
type: integer
- description: Include population value in response.
example: false
in: query
name: withpopulation
required: false
schema:
type: string
- description: Reference date (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: record_date
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / project flocks / kandangs / lookup
tags:
- Production
/api/production/project-flocks/locations/{location_id}/periods:
get:
description: Read access to `/api/production/project-flocks/locations/:location_id/periods`.
parameters:
- description: Path parameter `location_id`.
in: path
name: location_id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / project flocks / locations / :location_id / periods
tags:
- Production
/api/production/recordings/:
get:
description: Read access to `/api/production/recordings`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Project flock kandang id filter.
example: 1
in: query
name: project_flock_kandang_id
required: false
schema:
type: integer
- description: Search keyword.
example: record
in: query
name: search
required: false
schema:
type: string
- description: Export mode.
example: excel
in: query
name: export
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / recordings
tags:
- Production
/api/production/recordings/{id}:
get:
description: Read access to `/api/production/recordings/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / recordings / :id
tags:
- Production
/api/production/recordings/next-day:
get:
description: Read access to `/api/production/recordings/next-day`.
parameters:
- description: Project flock kandang id.
example: 1
in: query
name: project_flock_kandang_id
required: true
schema:
type: integer
- description: Recording date (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: record_date
required: true
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / recordings / next day
tags:
- Production
/api/production/transfer_layings/:
get:
description: Read access to `/api/production/transfer_layings`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: transfer
in: query
name: search
required: false
schema:
type: string
- description: Start date (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: start_date
required: false
schema:
type: string
- description: End date (YYYY-MM-DD).
example: "2026-01-31"
in: query
name: end_date
required: false
schema:
type: string
- description: Comma separated source flock ids.
example: 1,2
in: query
name: flock_source
required: false
schema:
type: string
- description: Comma separated destination flock ids.
example: 3,4
in: query
name: flock_destination
required: false
schema:
type: string
- description: Comma separated status values.
example: DRAFT,APPROVED
in: query
name: status
required: false
schema:
type: string
responses:
"200":
content:
application/json:
example:
code: 200
data:
- approval:
action: null
step_name: Pengajuan
step_number: 1
created_at: "2026-01-15T00:00:00Z"
created_by: 1
created_user:
id: 1
name: Admin
economic_cutoff_date: "2026-01-20T00:00:00Z"
effective_move_date: "2026-01-18T00:00:00Z"
executed_at: null
from_project_flock:
flock_name: Flock A Period 1
id: 1
id: 1
notes: ""
to_project_flock:
flock_name: Flock B Period 1
id: 2
transfer_date: "2026-01-15T00:00:00Z"
transfer_number: TL-00001
message: Get all transferLayings successfully
meta:
limit: 10
page: 1
total_pages: 1
total_results: 1
status: success
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / transfer_layings
tags:
- Production
/api/production/transfer_layings/{id}:
get:
description: Read access to `/api/production/transfer_layings/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
example:
code: 200
data:
approval:
action: null
step_name: Pengajuan
step_number: 1
created_at: "2026-01-15T00:00:00Z"
created_by: 1
created_user:
id: 1
name: Admin
economic_cutoff_date: "2026-01-20T00:00:00Z"
effective_move_date: "2026-01-18T00:00:00Z"
executed_at: null
from_project_flock:
flock_name: Flock A Period 1
id: 1
id: 1
notes: ""
sources:
- note: ""
qty: 5000
source_project_flock_kandang:
id: 1
kandang:
id: 1
name: Kandang A
kandang_id: 1
project_flock_id: 1
targets:
- note: ""
qty: 5000
target_project_flock_kandang:
id: 2
kandang:
id: 2
name: Kandang B
kandang_id: 2
project_flock_id: 2
to_project_flock:
flock_name: Flock B Period 1
id: 2
transfer_date: "2026-01-15T00:00:00Z"
transfer_number: TL-00001
message: Get transferLaying successfully
status: success
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / transfer_layings / :id
tags:
- Production
/api/production/transfer_layings/project-flocks/{project_flock_id}/available-qty:
get:
description: Read access to `/api/production/transfer_layings/project-flocks/:project_flock_id/available-qty`.
parameters:
- description: Path parameter `project_flock_id`.
in: path
name: project_flock_id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / transfer_layings / project flocks / :project_flock_id / available qty
tags:
- Production
/api/production/transfer_layings/project-flocks/{project_flock_id}/max-target-qty:
get:
description: Read access to `/api/production/transfer_layings/project-flocks/:project_flock_id/max-target-qty`.
parameters:
- description: Path parameter `project_flock_id`.
in: path
name: project_flock_id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / transfer_layings / project flocks / :project_flock_id / max target qty
tags:
- Production
/api/production/uniformities/:
get:
description: Read access to `/api/production/uniformities`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Project flock kandang id filter.
example: 1
in: query
name: project_flock_kandang_id
required: false
schema:
type: integer
- description: Week number filter.
example: 1
in: query
name: week
required: false
schema:
type: integer
- description: Start date (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: start_date
required: false
schema:
type: string
- description: End date (YYYY-MM-DD).
example: "2026-01-31"
in: query
name: end_date
required: false
schema:
type: string
- description: Include chart payload.
example: false
in: query
name: with_chart
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / uniformities
tags:
- Production
/api/production/uniformities/{id}:
get:
description: Read access to `/api/production/uniformities/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / production / uniformities / :id
tags:
- Production
/api/purchases/:
get:
description: Read access to `/api/purchases`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Supplier id filter.
example: 1
in: query
name: supplier_id
required: false
schema:
type: integer
- description: Area id filter.
example: 1
in: query
name: area_id
required: false
schema:
type: integer
- description: Location id filter.
example: 1
in: query
name: location_id
required: false
schema:
type: integer
- description: Product category id filter.
example: "1"
in: query
name: product_category_id
required: false
schema:
type: string
- description: Approval status filter.
example: PENDING
in: query
name: approval_status
required: false
schema:
type: string
- description: PO date (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: po_date
required: false
schema:
type: string
- description: PO date start (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: po_date_from
required: false
schema:
type: string
- description: PO date end (YYYY-MM-DD).
example: "2026-01-31"
in: query
name: po_date_to
required: false
schema:
type: string
- description: Search keyword.
example: PO-
in: query
name: search
required: false
schema:
type: string
- description: Created date start (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: created_from
required: false
schema:
type: string
- description: Created date end (YYYY-MM-DD).
example: "2026-01-31"
in: query
name: created_to
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / purchases
tags:
- Purchases
/api/purchases/{id}:
get:
description: Read access to `/api/purchases/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / purchases / :id
tags:
- Purchases
/api/reports/customer-payment:
get:
description: Read access to `/api/reports/customer-payment`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Period start date (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: start_date
required: false
schema:
type: string
- description: Period end date (YYYY-MM-DD).
example: "2026-01-31"
in: query
name: end_date
required: false
schema:
type: string
- description: Comma separated customer ids.
example: 1,2
in: query
name: customer_ids
required: false
schema:
type: string
- description: Date field filter.
example: TRANS_DATE
in: query
name: filter_by
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / reports / customer payment
tags:
- Reports
/api/reports/debt-supplier:
get:
description: Read access to `/api/reports/debt-supplier`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Period start date (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: start_date
required: false
schema:
type: string
- description: Period end date (YYYY-MM-DD).
example: "2026-01-31"
in: query
name: end_date
required: false
schema:
type: string
- description: Comma separated supplier ids.
example: 1,2
in: query
name: supplier_ids
required: false
schema:
type: string
- description: Date field filter.
example: received_date
in: query
name: filter_by
required: false
schema:
type: string
- description: Sort order.
example: asc
in: query
name: sort_order
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / reports / debt supplier
tags:
- Reports
/api/reports/expense:
get:
description: Read access to `/api/reports/expense`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: operasional
in: query
name: search
required: false
schema:
type: string
- description: Expense category filter.
example: BOP
in: query
name: category
required: false
schema:
type: string
- description: Supplier id filter.
example: 1
in: query
name: supplier_id
required: false
schema:
type: integer
- description: Kandang id filter.
example: 1
in: query
name: kandang_id
required: false
schema:
type: integer
- description: Project flock kandang id filter.
example: 1
in: query
name: project_flock_kandang_id
required: false
schema:
type: integer
- description: Nonstock id filter.
example: 1
in: query
name: nonstock_id
required: false
schema:
type: integer
- description: Location id filter.
example: 1
in: query
name: location_id
required: false
schema:
type: integer
- description: Area id filter.
example: 1
in: query
name: area_id
required: false
schema:
type: integer
- description: Realization date filter (YYYY-MM-DD).
example: "2026-01-15"
in: query
name: realization_date
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / reports / expense
tags:
- Reports
/api/reports/expense/depreciation:
get:
description: Read access to `/api/reports/expense/depreciation`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Daily period filter (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: period
required: true
schema:
type: string
- description: Comma separated project flock ids.
example: 1,2
in: query
name: project_flock_id
required: false
schema:
type: string
- description: Comma separated area ids.
example: 1,2
in: query
name: area_id
required: false
schema:
type: string
- description: Comma separated location ids.
example: 1,2
in: query
name: location_id
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / reports / expense / depreciation
tags:
- Reports
/api/reports/expense/depreciation/manual-inputs:
get:
description: Read access to `/api/reports/expense/depreciation/manual-inputs`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Comma separated project flock ids.
example: 1,2
in: query
name: project_flock_id
required: false
schema:
type: string
- description: Comma separated area ids.
example: 1,2
in: query
name: area_id
required: false
schema:
type: string
- description: Comma separated location ids.
example: 1,2
in: query
name: location_id
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / reports / expense / depreciation / manual inputs
tags:
- Reports
/api/reports/hpp-per-kandang:
get:
description: Read access to `/api/reports/hpp-per-kandang`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Daily period filter (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: period
required: false
schema:
type: string
- description: Include unrecorded data.
example: false
in: query
name: show_unrecorded
required: false
schema:
type: string
- description: Comma separated area ids.
example: 1,2
in: query
name: area_id
required: false
schema:
type: string
- description: Comma separated location ids.
example: 1,2
in: query
name: location_id
required: false
schema:
type: string
- description: Comma separated kandang ids.
example: 1,2
in: query
name: kandang_id
required: false
schema:
type: string
- description: Minimum body weight filter.
example: "1.2"
in: query
name: weight_min
required: false
schema:
type: string
- description: Maximum body weight filter.
example: "1.8"
in: query
name: weight_max
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / reports / hpp per kandang
tags:
- Reports
/api/reports/hpp-v2-breakdown:
get:
description: Read access to `/api/reports/hpp-v2-breakdown`.
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / reports / hpp v2 breakdown
tags:
- Reports
/api/reports/marketing:
get:
description: Read access to `/api/reports/marketing`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: SO-
in: query
name: search
required: false
schema:
type: string
- description: Customer id filter.
example: 1
in: query
name: customer_id
required: false
schema:
type: integer
- description: Product id filter.
example: 1
in: query
name: product_id
required: false
schema:
type: integer
- description: Warehouse id filter.
example: 1
in: query
name: warehouse_id
required: false
schema:
type: integer
- description: Sales person id filter.
example: 1
in: query
name: sales_person_id
required: false
schema:
type: integer
- description: Area id filter.
example: 1
in: query
name: area_id
required: false
schema:
type: integer
- description: Location id filter.
example: 1
in: query
name: location_id
required: false
schema:
type: integer
- description: Marketing type filter.
example: ayam
in: query
name: marketing_type
required: false
schema:
type: string
- description: Date field filter.
example: so_date
in: query
name: filter_by
required: false
schema:
type: string
- description: Period start date (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: start_date
required: false
schema:
type: string
- description: Period end date (YYYY-MM-DD).
example: "2026-01-31"
in: query
name: end_date
required: false
schema:
type: string
- description: Sort field.
example: so_date
in: query
name: sort_by
required: false
schema:
type: string
- description: Sort order.
example: asc
in: query
name: sort_order
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / reports / marketing
tags:
- Reports
/api/reports/production-result/{idProjectFlockKandang}:
get:
description: Read access to `/api/reports/production-result/:idProjectFlockKandang`.
parameters:
- description: Path parameter `idProjectFlockKandang`.
in: path
name: idProjectFlockKandang
required: true
schema:
example: "1"
type: string
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / reports / production result / :idProjectFlockKandang
tags:
- Reports
/api/reports/purchase-supplier:
get:
description: Read access to `/api/reports/purchase-supplier`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Comma separated area ids.
example: 1,2
in: query
name: area_id
required: false
schema:
type: string
- description: Comma separated supplier ids.
example: 1,2
in: query
name: supplier_id
required: false
schema:
type: string
- description: Comma separated product ids.
example: 1,2
in: query
name: product_id
required: false
schema:
type: string
- description: Comma separated product category ids.
example: 1,2
in: query
name: product_category_id
required: false
schema:
type: string
- description: Period start date (YYYY-MM-DD).
example: "2026-01-01"
in: query
name: start_date
required: false
schema:
type: string
- description: Period end date (YYYY-MM-DD).
example: "2026-01-31"
in: query
name: end_date
required: false
schema:
type: string
- description: Sort field.
example: created_at
in: query
name: sort_by
required: false
schema:
type: string
- description: Filter field.
example: received_date
in: query
name: filter_by
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / reports / purchase supplier
tags:
- Reports
/api/sso/callback:
get:
description: Read access to `/api/sso/callback`.
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
summary: GET api / sso / callback
tags:
- SSO
/api/sso/master/areas:
get:
description: Read access to `/api/sso/master/areas`.
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
summary: GET api / sso / master / areas
tags:
- SSO
/api/sso/master/locations:
get:
description: Read access to `/api/sso/master/locations`.
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
summary: GET api / sso / master / locations
tags:
- SSO
/api/sso/start:
get:
description: Read access to `/api/sso/start`.
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
summary: GET api / sso / start
tags:
- SSO
/api/sso/userinfo:
get:
description: Read access to `/api/sso/userinfo`.
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- BearerAuth: []
summary: GET api / sso / userinfo
tags:
- SSO
/api/system-settings/:
get:
description: Read access to `/api/system-settings`.
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / system settings
tags:
- API
/api/users/:
get:
description: Read access to `/api/users`.
parameters:
- description: Page number.
example: 1
in: query
name: page
required: false
schema:
type: integer
- description: Page size.
example: 10
in: query
name: limit
required: false
schema:
type: integer
- description: Search keyword.
example: admin
in: query
name: search
required: false
schema:
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / users
tags:
- Users
/api/users/{id}:
get:
description: Read access to `/api/users/:id`.
parameters:
- description: Path parameter `id`.
in: path
name: id
required: true
schema:
example: "1"
type: string
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
security:
- ApiKeyAuth: []
- BearerAuth: []
summary: GET api / users / :id
tags:
- Users
/healthz:
get:
description: Simple liveness probe.
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
summary: Health check
tags:
- System
/readyz:
get:
description: Readiness probe for database and Redis.
responses:
"200":
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessEnvelope'
description: Successful response
"401":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Unauthorized
"403":
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorEnvelope'
description: Forbidden
summary: Readiness check
tags:
- System
servers:
- url: http://localhost:8081