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