Files

2511 lines
68 KiB
YAML

basePath: /api/v1
definitions:
api-service_internal_models.AggregateData:
properties:
by_dinas:
additionalProperties:
type: integer
type: object
by_jenis:
additionalProperties:
type: integer
type: object
by_status:
additionalProperties:
type: integer
type: object
created_today:
type: integer
last_updated:
type: string
total_active:
type: integer
total_draft:
type: integer
total_inactive:
type: integer
updated_today:
type: integer
type: object
api-service_internal_models.ErrorResponse:
properties:
code:
type: integer
error:
type: string
message:
type: string
timestamp:
type: string
type: object
api-service_internal_models.MetaResponse:
properties:
current_page:
type: integer
has_next:
type: boolean
has_prev:
type: boolean
limit:
type: integer
offset:
type: integer
total:
type: integer
total_pages:
type: integer
type: object
api-service_internal_models.NullableInt32:
properties:
int32:
type: integer
valid:
type: boolean
type: object
api-service_internal_models.NullableString:
properties:
string:
type: string
valid:
type: boolean
type: object
api-service_internal_models.NullableTime:
properties:
time:
type: string
valid:
type: boolean
type: object
api-service_internal_models_auth.LoginRequest:
properties:
password:
type: string
username:
type: string
required:
- password
- username
type: object
api-service_internal_models_auth.TokenResponse:
properties:
access_token:
type: string
expires_in:
description: Durasi dalam detik
type: integer
refresh_token:
type: string
token_type:
description: Biasanya "Bearer"
type: string
type: object
api-service_internal_models_auth.User:
properties:
email:
type: string
id:
type: string
role:
type: string
username:
type: string
type: object
api-service_internal_models_component.ComponentCreateRequest:
properties:
active:
type: boolean
description:
maxLength: 255
type: string
directory:
maxLength: 255
minLength: 1
type: string
fk_rol_pages_id:
minimum: 1
type: integer
name:
maxLength: 100
minLength: 1
type: string
sort:
type: integer
required:
- directory
- fk_rol_pages_id
- name
type: object
api-service_internal_models_component.ComponentCreateResponse:
properties:
data:
$ref: '#/definitions/api-service_internal_models_component.Rol_component'
message:
type: string
type: object
api-service_internal_models_component.ComponentDeleteResponse:
properties:
id:
type: string
message:
type: string
type: object
api-service_internal_models_component.ComponentUpdateRequest:
properties:
active:
type: boolean
description:
maxLength: 255
type: string
directory:
maxLength: 255
minLength: 1
type: string
fk_rol_pages_id:
minimum: 1
type: integer
name:
maxLength: 100
minLength: 1
type: string
sort:
minimum: 1
type: integer
type: object
api-service_internal_models_component.ComponentUpdateResponse:
properties:
data:
$ref: '#/definitions/api-service_internal_models_component.Rol_component'
message:
type: string
type: object
api-service_internal_models_component.ComponentsGetResponse:
properties:
code:
type: integer
data:
items:
$ref: '#/definitions/api-service_internal_models_component.Rol_component'
type: array
message:
type: string
meta:
$ref: '#/definitions/api-service_internal_models.MetaResponse'
type: object
api-service_internal_models_component.Rol_component:
properties:
active:
type: boolean
description:
$ref: '#/definitions/sql.NullString'
directory:
type: string
fk_rol_pages_id:
type: integer
id:
type: integer
name:
type: string
sort:
type: integer
type: object
api-service_internal_models_pages.ComponentCreateRequest:
properties:
active:
type: boolean
description:
maxLength: 255
type: string
directory:
maxLength: 255
minLength: 1
type: string
name:
maxLength: 100
minLength: 1
type: string
sort:
type: integer
required:
- directory
- name
type: object
api-service_internal_models_pages.ComponentUpdateRequest:
properties:
active:
type: boolean
description:
maxLength: 255
type: string
directory:
maxLength: 255
minLength: 1
type: string
fk_rol_pages_id:
minimum: 1
type: integer
id:
type: integer
name:
maxLength: 100
minLength: 1
type: string
sort:
minimum: 1
type: integer
required:
- id
type: object
api-service_internal_models_pages.PagesCreateRequest:
properties:
active:
type: boolean
components:
items:
$ref: '#/definitions/api-service_internal_models_pages.ComponentCreateRequest'
type: array
icon:
maxLength: 100
minLength: 1
type: string
id:
description: Status string `json:"status" validate:"required,oneof=draft
active inactive"`
type: integer
level:
type: integer
name:
maxLength: 20
minLength: 1
type: string
parent:
minimum: 1
type: integer
permissions:
items:
$ref: '#/definitions/api-service_internal_models_pages.PermissionCreateRequest'
type: array
sort:
type: integer
url:
maxLength: 100
minLength: 1
type: string
required:
- name
type: object
api-service_internal_models_pages.PagesCreateResponse:
properties:
data:
$ref: '#/definitions/api-service_internal_models_pages.Rol_pages'
message:
type: string
type: object
api-service_internal_models_pages.PagesDeleteResponse:
properties:
id:
type: string
message:
type: string
type: object
api-service_internal_models_pages.PagesGetResponse:
properties:
code:
type: integer
data:
items:
$ref: '#/definitions/api-service_internal_models_pages.Rol_pages'
type: array
message:
type: string
meta:
$ref: '#/definitions/api-service_internal_models.MetaResponse'
summary:
$ref: '#/definitions/api-service_internal_models.AggregateData'
type: object
api-service_internal_models_pages.PagesUpdateRequest:
properties:
active:
type: boolean
components:
items:
$ref: '#/definitions/api-service_internal_models_pages.ComponentUpdateRequest'
type: array
icon:
maxLength: 100
minLength: 1
type: string
id:
description: used when updating via JSON array (bulk)
type: integer
level:
minimum: 1
type: integer
name:
description: Status string `json:"status" validate:"required,oneof=draft
active inactive"`
maxLength: 20
minLength: 1
type: string
parent:
minimum: 1
type: integer
permissions:
items:
$ref: '#/definitions/api-service_internal_models_pages.PermissionUpdateRequest'
type: array
sort:
minimum: 1
type: integer
url:
maxLength: 100
minLength: 1
type: string
type: object
api-service_internal_models_pages.PagesUpdateResponse:
properties:
data:
$ref: '#/definitions/api-service_internal_models_pages.Rol_pages'
message:
type: string
type: object
api-service_internal_models_pages.PermissionCreateRequest:
properties:
active:
type: boolean
create:
type: boolean
delete:
type: boolean
disable:
type: boolean
group_keycloak:
items:
type: string
type: array
read:
type: boolean
role_keycloak:
description: FkRolPagesID *int64 `json:"fk_rol_pages_id" validate:"omitempty,"`
items:
type: string
type: array
update:
type: boolean
type: object
api-service_internal_models_pages.PermissionUpdateRequest:
properties:
active:
type: boolean
create:
type: boolean
delete:
type: boolean
disable:
type: boolean
fk_rol_pages_id:
type: integer
group_keycloak:
items:
type: string
type: array
id:
type: integer
read:
type: boolean
role_keycloak:
items:
type: string
type: array
update:
type: boolean
required:
- id
type: object
api-service_internal_models_pages.Rol_component:
properties:
active:
type: boolean
description:
$ref: '#/definitions/sql.NullString'
directory:
type: string
fk_rol_pages_id:
type: integer
id:
type: integer
name:
type: string
sort:
type: integer
type: object
api-service_internal_models_pages.Rol_pages:
properties:
active:
type: boolean
icon:
$ref: '#/definitions/sql.NullString'
id:
type: integer
level:
type: integer
list_component:
items:
$ref: '#/definitions/api-service_internal_models_pages.Rol_component'
type: array
list_permission:
items:
$ref: '#/definitions/api-service_internal_models_pages.Rol_permission'
type: array
name:
type: string
parent:
$ref: '#/definitions/api-service_internal_models.NullableInt32'
sort:
type: integer
url:
$ref: '#/definitions/sql.NullString'
type: object
api-service_internal_models_pages.Rol_permission:
properties:
active:
$ref: '#/definitions/sql.NullBool'
create:
$ref: '#/definitions/sql.NullBool'
delete:
$ref: '#/definitions/sql.NullBool'
disable:
allOf:
- $ref: '#/definitions/sql.NullBool'
description: 'Note: "disable" is a Go keyword, so "Disable" is used for the
field name.'
fk_rol_pages_id:
$ref: '#/definitions/api-service_internal_models.NullableInt32'
group_keycloak:
items:
type: string
type: array
id:
type: integer
read:
$ref: '#/definitions/sql.NullBool'
role_keycloak:
description: Use NullString for optional text fields
items:
type: string
type: array
update:
$ref: '#/definitions/sql.NullBool'
type: object
api-service_internal_models_pasien.Pasien:
properties:
agama:
$ref: '#/definitions/sql.NullInt32'
alamat:
$ref: '#/definitions/sql.NullString'
createdAt:
$ref: '#/definitions/sql.NullTime'
id:
type: integer
idkecamatan:
type: integer
idkelurahan:
type: integer
idkota:
type: integer
idprovinsi:
type: integer
jeniskelamin:
$ref: '#/definitions/sql.NullString'
kdkecamatan:
$ref: '#/definitions/sql.NullInt32'
kdprovinsi:
$ref: '#/definitions/sql.NullInt32'
kelurahan:
$ref: '#/definitions/sql.NullInt64'
kota:
$ref: '#/definitions/sql.NullInt32'
nama:
$ref: '#/definitions/sql.NullString'
namakecamatan:
$ref: '#/definitions/sql.NullString'
namakelurahan:
$ref: '#/definitions/sql.NullString'
namakota:
$ref: '#/definitions/sql.NullString'
namaprovinsi:
$ref: '#/definitions/sql.NullString'
noKartu:
$ref: '#/definitions/sql.NullString'
noktpBaru:
$ref: '#/definitions/sql.NullString'
nomr:
$ref: '#/definitions/sql.NullString'
status:
$ref: '#/definitions/sql.NullString'
tempat:
$ref: '#/definitions/sql.NullString'
tgllahir:
$ref: '#/definitions/sql.NullTime'
title:
$ref: '#/definitions/sql.NullString'
updatedAt:
$ref: '#/definitions/sql.NullTime'
type: object
api-service_internal_models_pasien.PasienAgeStatsResponse:
properties:
data:
additionalProperties: true
type: object
message:
type: string
type: object
api-service_internal_models_pasien.PasienCreateRequest:
properties:
agama:
type: integer
alamat:
type: string
id:
type: integer
jeniskelamin:
enum:
- L
- P
type: string
kdkecamatan:
type: integer
kdprovinsi:
type: integer
kelurahan:
type: integer
kota:
type: integer
nama:
maxLength: 100
minLength: 1
type: string
noKartu:
type: string
noktpBaru:
type: string
nomr:
type: string
status:
enum:
- draft
- active
- inactive
type: string
tempat:
type: string
tgllahir:
type: string
title:
maxLength: 100
minLength: 1
type: string
required:
- nama
- status
- title
type: object
api-service_internal_models_pasien.PasienCreateResponse:
properties:
data:
$ref: '#/definitions/api-service_internal_models_pasien.Pasien'
message:
type: string
type: object
api-service_internal_models_pasien.PasienDeleteResponse:
properties:
id:
type: string
message:
type: string
type: object
api-service_internal_models_pasien.PasienGetByIDResponse:
properties:
data:
$ref: '#/definitions/api-service_internal_models_pasien.Pasien'
message:
type: string
type: object
api-service_internal_models_pasien.PasienGetByNomrResponse:
properties:
data:
items:
$ref: '#/definitions/api-service_internal_models_pasien.Pasien'
type: array
message:
type: string
meta:
$ref: '#/definitions/api-service_internal_models.MetaResponse'
summary:
$ref: '#/definitions/api-service_internal_models.AggregateData'
type: object
api-service_internal_models_pasien.PasienGetResponse:
properties:
data:
items:
$ref: '#/definitions/api-service_internal_models_pasien.Pasien'
type: array
message:
type: string
meta:
$ref: '#/definitions/api-service_internal_models.MetaResponse'
summary:
$ref: '#/definitions/api-service_internal_models.AggregateData'
type: object
api-service_internal_models_pasien.PasienUpdateRequest:
properties:
agama:
type: integer
alamat:
type: string
jeniskelamin:
enum:
- L
- P
type: string
kdkecamatan:
type: integer
kdprovinsi:
type: integer
kelurahan:
type: integer
kota:
type: integer
nama:
maxLength: 100
minLength: 1
type: string
noKartu:
type: string
noktpBaru:
type: string
nomr:
type: string
status:
enum:
- draft
- active
- inactive
type: string
tempat:
type: string
tgllahir:
type: string
title:
maxLength: 255
minLength: 1
type: string
required:
- nama
- status
type: object
api-service_internal_models_pasien.PasienUpdateResponse:
properties:
data:
$ref: '#/definitions/api-service_internal_models_pasien.Pasien'
message:
type: string
type: object
api-service_internal_models_patient.Patient:
properties:
active:
$ref: '#/definitions/sql.NullBool'
address:
$ref: '#/definitions/sql.NullString'
attachments:
items:
$ref: '#/definitions/api-service_internal_models_patient.PatientAttachment'
type: array
birth_date:
$ref: '#/definitions/sql.NullTime'
ds_sd_kabupaten_kota:
$ref: '#/definitions/sql.NullString'
ds_sd_kecamatan:
$ref: '#/definitions/sql.NullString'
ds_sd_kelurahan:
$ref: '#/definitions/sql.NullString'
ds_sd_provinsi:
$ref: '#/definitions/sql.NullString'
fk_sd_kabupaten_kota_id:
$ref: '#/definitions/api-service_internal_models.NullableInt32'
fk_sd_kecamatan_id:
$ref: '#/definitions/api-service_internal_models.NullableInt32'
fk_sd_kelurahan_id:
$ref: '#/definitions/api-service_internal_models.NullableInt32'
fk_sd_provinsi_id:
$ref: '#/definitions/api-service_internal_models.NullableInt32'
gender:
$ref: '#/definitions/sql.NullString'
id:
type: integer
medical_record_number:
$ref: '#/definitions/sql.NullString'
name:
$ref: '#/definitions/sql.NullString'
payment_types:
items:
$ref: '#/definitions/api-service_internal_models_patient.PatientPaymentType'
type: array
phone_number:
$ref: '#/definitions/sql.NullString'
type: object
api-service_internal_models_patient.PatientAttachment:
properties:
active:
$ref: '#/definitions/sql.NullBool'
directory:
$ref: '#/definitions/sql.NullString'
file_name:
$ref: '#/definitions/sql.NullString'
fk_ms_patient_id:
$ref: '#/definitions/api-service_internal_models.NullableInt32'
id:
type: integer
name:
$ref: '#/definitions/sql.NullString'
type: object
api-service_internal_models_patient.PatientCreateResponse:
properties:
data:
$ref: '#/definitions/api-service_internal_models_patient.Patient'
message:
type: string
type: object
api-service_internal_models_patient.PatientGetResponse:
properties:
data:
items:
$ref: '#/definitions/api-service_internal_models_patient.Patient'
type: array
message:
type: string
meta:
$ref: '#/definitions/api-service_internal_models.MetaResponse'
summary:
$ref: '#/definitions/api-service_internal_models.AggregateData'
type: object
api-service_internal_models_patient.PatientPaymentType:
properties:
active:
$ref: '#/definitions/sql.NullBool'
fk_ms_patient_id:
$ref: '#/definitions/api-service_internal_models.NullableInt32'
fk_ref_payment_type:
$ref: '#/definitions/api-service_internal_models.NullableInt32'
id:
type: integer
name:
$ref: '#/definitions/sql.NullString'
number:
$ref: '#/definitions/sql.NullString'
type: object
api-service_internal_models_patient.PatientPostRequest:
properties:
medical_record_number:
description: ID int64 `json:"id" validate:"required,min=1"`
minLength: 1
type: string
required:
- medical_record_number
type: object
api-service_internal_models_permission.PermissionCreateRequest:
properties:
active:
type: boolean
create:
type: boolean
delete:
type: boolean
disable:
type: boolean
fk_rol_pages_id:
type: integer
group_keycloak:
items:
type: string
type: array
read:
type: boolean
role_keycloak:
items:
type: string
type: array
update:
type: boolean
type: object
api-service_internal_models_permission.PermissionCreateResponse:
properties:
data:
$ref: '#/definitions/api-service_internal_models_permission.Rol_permission'
message:
type: string
type: object
api-service_internal_models_permission.PermissionDeleteResponse:
properties:
id:
type: string
message:
type: string
type: object
api-service_internal_models_permission.PermissionUpdateRequest:
properties:
active:
type: boolean
create:
type: boolean
delete:
type: boolean
disable:
type: boolean
fk_rol_pages_id:
type: integer
group_keycloak:
items:
type: string
type: array
read:
type: boolean
role_keycloak:
items:
type: string
type: array
update:
type: boolean
type: object
api-service_internal_models_permission.PermissionUpdateResponse:
properties:
data:
$ref: '#/definitions/api-service_internal_models_permission.Rol_permission'
message:
type: string
type: object
api-service_internal_models_permission.PermissionsGetResponse:
properties:
code:
type: integer
data:
items:
$ref: '#/definitions/api-service_internal_models_permission.Rol_permission'
type: array
message:
type: string
meta:
$ref: '#/definitions/api-service_internal_models.MetaResponse'
type: object
api-service_internal_models_permission.Rol_permission:
properties:
active:
$ref: '#/definitions/sql.NullBool'
create:
$ref: '#/definitions/sql.NullBool'
delete:
$ref: '#/definitions/sql.NullBool'
disable:
allOf:
- $ref: '#/definitions/sql.NullBool'
description: '"disable" is a Go keyword, so "Disable" is used for the field
name.'
fk_rol_pages_id:
$ref: '#/definitions/api-service_internal_models.NullableInt32'
group_keycloak:
items:
type: string
type: array
id:
type: integer
read:
$ref: '#/definitions/sql.NullBool'
role_keycloak:
description: Use NullString for optional text fields
items:
type: string
type: array
update:
$ref: '#/definitions/sql.NullBool'
type: object
api-service_internal_models_retribusi.Retribusi:
properties:
date_created:
$ref: '#/definitions/api-service_internal_models.NullableTime'
date_updated:
$ref: '#/definitions/api-service_internal_models.NullableTime'
dinas:
$ref: '#/definitions/api-service_internal_models.NullableString'
id:
type: string
jenis:
$ref: '#/definitions/api-service_internal_models.NullableString'
kelompok_obyek:
$ref: '#/definitions/api-service_internal_models.NullableString'
kode_tarif:
$ref: '#/definitions/api-service_internal_models.NullableString'
pelayanan:
$ref: '#/definitions/api-service_internal_models.NullableString'
rekening_denda:
$ref: '#/definitions/api-service_internal_models.NullableString'
rekening_pokok:
$ref: '#/definitions/api-service_internal_models.NullableString'
satuan:
$ref: '#/definitions/api-service_internal_models.NullableString'
satuan_overtime:
$ref: '#/definitions/api-service_internal_models.NullableString'
sort:
$ref: '#/definitions/api-service_internal_models.NullableInt32'
status:
type: string
tarif:
$ref: '#/definitions/api-service_internal_models.NullableString'
tarif_overtime:
$ref: '#/definitions/api-service_internal_models.NullableString'
uraian_1:
$ref: '#/definitions/api-service_internal_models.NullableString'
uraian_2:
$ref: '#/definitions/api-service_internal_models.NullableString'
uraian_3:
$ref: '#/definitions/api-service_internal_models.NullableString'
user_created:
$ref: '#/definitions/api-service_internal_models.NullableString'
user_updated:
$ref: '#/definitions/api-service_internal_models.NullableString'
type: object
api-service_internal_models_retribusi.RetribusiCreateRequest:
properties:
dinas:
maxLength: 255
minLength: 1
type: string
jenis:
maxLength: 255
minLength: 1
type: string
kelompok_obyek:
maxLength: 255
minLength: 1
type: string
kode_tarif:
maxLength: 255
minLength: 1
type: string
pelayanan:
maxLength: 255
minLength: 1
type: string
rekening_denda:
maxLength: 255
minLength: 1
type: string
rekening_pokok:
maxLength: 255
minLength: 1
type: string
satuan:
maxLength: 255
minLength: 1
type: string
satuan_overtime:
maxLength: 255
minLength: 1
type: string
status:
enum:
- draft
- active
- inactive
type: string
tarif:
type: string
tarif_overtime:
type: string
uraian_1:
type: string
uraian_2:
type: string
uraian_3:
type: string
required:
- status
type: object
api-service_internal_models_retribusi.RetribusiCreateResponse:
properties:
data:
$ref: '#/definitions/api-service_internal_models_retribusi.Retribusi'
message:
type: string
type: object
api-service_internal_models_retribusi.RetribusiDeleteResponse:
properties:
id:
type: string
message:
type: string
type: object
api-service_internal_models_retribusi.RetribusiGetByIDResponse:
properties:
data:
$ref: '#/definitions/api-service_internal_models_retribusi.Retribusi'
message:
type: string
type: object
api-service_internal_models_retribusi.RetribusiGetResponse:
properties:
data:
items:
$ref: '#/definitions/api-service_internal_models_retribusi.Retribusi'
type: array
message:
type: string
meta:
$ref: '#/definitions/api-service_internal_models.MetaResponse'
summary:
$ref: '#/definitions/api-service_internal_models.AggregateData'
type: object
api-service_internal_models_retribusi.RetribusiUpdateRequest:
properties:
dinas:
maxLength: 255
minLength: 1
type: string
jenis:
maxLength: 255
minLength: 1
type: string
kelompok_obyek:
maxLength: 255
minLength: 1
type: string
kode_tarif:
maxLength: 255
minLength: 1
type: string
pelayanan:
maxLength: 255
minLength: 1
type: string
rekening_denda:
maxLength: 255
minLength: 1
type: string
rekening_pokok:
maxLength: 255
minLength: 1
type: string
satuan:
maxLength: 255
minLength: 1
type: string
satuan_overtime:
maxLength: 255
minLength: 1
type: string
status:
enum:
- draft
- active
- inactive
type: string
tarif:
type: string
tarif_overtime:
type: string
uraian_1:
type: string
uraian_2:
type: string
uraian_3:
type: string
required:
- status
type: object
api-service_internal_models_retribusi.RetribusiUpdateResponse:
properties:
data:
$ref: '#/definitions/api-service_internal_models_retribusi.Retribusi'
message:
type: string
type: object
sql.NullBool:
properties:
bool:
type: boolean
valid:
description: Valid is true if Bool is not NULL
type: boolean
type: object
sql.NullInt32:
properties:
int32:
format: int32
type: integer
valid:
description: Valid is true if Int32 is not NULL
type: boolean
type: object
sql.NullInt64:
properties:
int64:
format: int64
type: integer
valid:
description: Valid is true if Int64 is not NULL
type: boolean
type: object
sql.NullString:
properties:
string:
type: string
valid:
description: Valid is true if String is not NULL
type: boolean
type: object
sql.NullTime:
properties:
time:
type: string
valid:
description: Valid is true if Time is not NULL
type: boolean
type: object
host: localhost:8084
info:
contact:
email: support@swagger.io
name: API Support
url: http://www.swagger.io/support
description: A comprehensive Go API service with Swagger documentation
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
termsOfService: http://swagger.io/terms/
title: API Service
version: 1.0.0
paths:
/api/v1/auth/login:
post:
consumes:
- application/json
description: Authenticate user with username and password to receive JWT token
parameters:
- description: Login credentials
in: body
name: login
required: true
schema:
$ref: '#/definitions/api-service_internal_models_auth.LoginRequest'
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/api-service_internal_models_auth.TokenResponse'
"400":
description: Bad request
schema:
additionalProperties:
type: string
type: object
"401":
description: Unauthorized
schema:
additionalProperties:
type: string
type: object
summary: Login user and get JWT token
tags:
- Authentication
/api/v1/auth/me:
get:
description: Get information about the currently authenticated user
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/api-service_internal_models_auth.User'
"401":
description: Unauthorized
schema:
additionalProperties:
type: string
type: object
security:
- Bearer: []
summary: Get current user info
tags:
- Authentication
/api/v1/auth/refresh:
post:
consumes:
- application/json
description: Refresh the JWT token using a valid refresh token
parameters:
- description: Refresh token
in: body
name: refresh
required: true
schema:
additionalProperties:
type: string
type: object
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/api-service_internal_models_auth.TokenResponse'
"400":
description: Bad request
schema:
additionalProperties:
type: string
type: object
"401":
description: Unauthorized
schema:
additionalProperties:
type: string
type: object
summary: Refresh JWT token
tags:
- Authentication
/api/v1/auth/register:
post:
consumes:
- application/json
description: Register a new user account
parameters:
- description: Registration data
in: body
name: register
required: true
schema:
additionalProperties:
type: string
type: object
produces:
- application/json
responses:
"201":
description: Created
schema:
additionalProperties:
type: string
type: object
"400":
description: Bad request
schema:
additionalProperties:
type: string
type: object
summary: Register new user
tags:
- Authentication
/api/v1/pasien/:
get:
consumes:
- application/json
description: Get list of pasien with pagination and filters
parameters:
- default: 10
description: Limit (max 100)
in: query
name: limit
type: integer
- default: 0
description: Offset
in: query
name: offset
type: integer
- description: Filter by status
in: query
name: status
type: string
- description: Search in multiple fields
in: query
name: search
type: string
produces:
- application/json
responses:
"200":
description: Success response
schema:
$ref: '#/definitions/api-service_internal_models_pasien.PasienGetResponse'
"400":
description: Bad request
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get Pasien List
tags:
- Pasien
post:
consumes:
- application/json
description: Create a new pasien
parameters:
- description: Pasien creation request
in: body
name: request
required: true
schema:
$ref: '#/definitions/api-service_internal_models_pasien.PasienCreateRequest'
produces:
- application/json
responses:
"201":
description: Pasien created successfully
schema:
$ref: '#/definitions/api-service_internal_models_pasien.PasienCreateResponse'
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Create Pasien
tags:
- Pasien
/api/v1/pasien/:id:
get:
consumes:
- application/json
description: Get pasien by ID
parameters:
- description: Pasien ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Success response
schema:
$ref: '#/definitions/api-service_internal_models_pasien.PasienGetByIDResponse'
"400":
description: Invalid ID format
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Pasien not found
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get Pasien by ID
tags:
- Pasien
/api/v1/pasien/:nomr:
delete:
consumes:
- application/json
description: Delete a pasien
parameters:
- description: Pasien ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Pasien deleted successfully
schema:
$ref: '#/definitions/api-service_internal_models_pasien.PasienDeleteResponse'
"400":
description: Invalid ID format
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Pasien not found
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Delete Pasien
tags:
- Pasien
put:
consumes:
- application/json
description: Update an existing pasien
parameters:
- description: Pasien ID
in: path
name: id
required: true
type: string
- description: Pasien update request
in: body
name: request
required: true
schema:
$ref: '#/definitions/api-service_internal_models_pasien.PasienUpdateRequest'
produces:
- application/json
responses:
"200":
description: Pasien updated successfully
schema:
$ref: '#/definitions/api-service_internal_models_pasien.PasienUpdateResponse'
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Pasien not found
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Update Pasien
tags:
- Pasien
/api/v1/pasien/by-age:
get:
consumes:
- application/json
description: Get pasien statistics by age group
parameters:
- description: Age group (child, teen, adult, senior)
in: query
name: age_group
type: string
produces:
- application/json
responses:
"200":
description: Statistics data
schema:
$ref: '#/definitions/api-service_internal_models_pasien.PasienAgeStatsResponse'
"400":
description: Bad request
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get Pasien by Age Group
tags:
- Pasien
/api/v1/pasien/by-location:
get:
consumes:
- application/json
description: Get pasien by location (provinsi, kota, kecamatan, kelurahan)
parameters:
- description: Filter by kelurahan ID
in: query
name: kelurahan
type: integer
- description: Filter by kdkecamatan ID
in: query
name: kdkecamatan
type: integer
- description: Filter by kota ID
in: query
name: kota
type: integer
- description: Filter by kdprovinsi ID
in: query
name: kdprovinsi
type: integer
- default: 10
description: Limit (max 100)
in: query
name: limit
type: integer
- default: 0
description: Offset
in: query
name: offset
type: integer
produces:
- application/json
responses:
"200":
description: Success response
schema:
$ref: '#/definitions/api-service_internal_models_pasien.PasienGetResponse'
"400":
description: Bad request
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get Pasien by Location
tags:
- Pasien
/api/v1/pasien/dynamic:
get:
consumes:
- application/json
description: Get pasien with dynamic filtering
parameters:
- description: Fields to select (e.g., fields=*.*)
in: query
name: fields
type: string
- description: Dynamic filters (e.g., filter[name][_eq]=value)
in: query
name: filter[column][operator]
type: string
- description: Sort fields (e.g., sort=date_created,-name)
in: query
name: sort
type: string
- default: 10
description: Limit
in: query
name: limit
type: integer
- default: 0
description: Offset
in: query
name: offset
type: integer
produces:
- application/json
responses:
"200":
description: Success response
schema:
$ref: '#/definitions/api-service_internal_models_pasien.PasienGetResponse'
"400":
description: Bad request
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get Pasien Dynamic
tags:
- Pasien
/api/v1/pasien/nomr/:nomr:
get:
consumes:
- application/json
description: Get pasien by Nomr
produces:
- application/json
responses:
"200":
description: Success response
schema:
$ref: '#/definitions/api-service_internal_models_pasien.PasienGetByNomrResponse'
"400":
description: Bad request
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get Pasien by Nomr
tags:
- Pasien
/api/v1/retribusi/{id}:
delete:
consumes:
- application/json
description: Soft deletes a retribusi by setting status to 'deleted'
parameters:
- description: Retribusi ID (UUID)
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Retribusi deleted successfully
schema:
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiDeleteResponse'
"400":
description: Invalid ID format
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Retribusi not found
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Delete retribusi
tags:
- Retribusi
get:
consumes:
- application/json
description: Returns a single retribusi by ID
parameters:
- description: Retribusi ID (UUID)
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Success response
schema:
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiGetByIDResponse'
"400":
description: Invalid ID format
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Retribusi not found
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get Retribusi by ID
tags:
- Retribusi
put:
consumes:
- application/json
description: Updates an existing retribusi record
parameters:
- description: Retribusi ID (UUID)
in: path
name: id
required: true
type: string
- description: Retribusi update request
in: body
name: request
required: true
schema:
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiUpdateRequest'
produces:
- application/json
responses:
"200":
description: Retribusi updated successfully
schema:
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiUpdateResponse'
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Retribusi not found
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Update retribusi
tags:
- Retribusi
/api/v1/retribusis:
get:
consumes:
- application/json
description: Returns a paginated list of retribusis with optional summary statistics
parameters:
- default: 10
description: Limit (max 100)
in: query
name: limit
type: integer
- default: 0
description: Offset
in: query
name: offset
type: integer
- default: false
description: Include aggregation summary
in: query
name: include_summary
type: boolean
- description: Filter by status
in: query
name: status
type: string
- description: Filter by jenis
in: query
name: jenis
type: string
- description: Filter by dinas
in: query
name: dinas
type: string
- description: Search in multiple fields
in: query
name: search
type: string
produces:
- application/json
responses:
"200":
description: Success response
schema:
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiGetResponse'
"400":
description: Bad request
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get retribusi with pagination and optional aggregation
tags:
- Retribusi
post:
consumes:
- application/json
description: Creates a new retribusi record
parameters:
- description: Retribusi creation request
in: body
name: request
required: true
schema:
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiCreateRequest'
produces:
- application/json
responses:
"201":
description: Retribusi created successfully
schema:
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiCreateResponse'
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Create retribusi
tags:
- Retribusi
/api/v1/retribusis/dynamic:
get:
consumes:
- application/json
description: Returns retribusis with advanced dynamic filtering like Directus
parameters:
- description: Fields to select (e.g., fields=*.*)
in: query
name: fields
type: string
- description: Dynamic filters (e.g., filter[Jenis][_eq]=value)
in: query
name: filter[column][operator]
type: string
- description: Sort fields (e.g., sort=date_created,-Jenis)
in: query
name: sort
type: string
- default: 10
description: Limit
in: query
name: limit
type: integer
- default: 0
description: Offset
in: query
name: offset
type: integer
produces:
- application/json
responses:
"200":
description: Success response
schema:
$ref: '#/definitions/api-service_internal_models_retribusi.RetribusiGetResponse'
"400":
description: Bad request
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get retribusi with dynamic filtering
tags:
- Retribusi
/api/v1/retribusis/stats:
get:
consumes:
- application/json
description: Returns comprehensive statistics about retribusi data
parameters:
- description: Filter statistics by status
in: query
name: status
type: string
produces:
- application/json
responses:
"200":
description: Statistics data
schema:
$ref: '#/definitions/api-service_internal_models.AggregateData'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get retribusi statistics
tags:
- Retribusi
/api/v1/retribusis/welcome:
get:
consumes:
- application/json
description: Returns a welcome message and logs the request
produces:
- application/json
responses:
"200":
description: Welcome message
schema:
additionalProperties:
type: string
type: object
summary: Get welcome message
tags:
- Retribusi
/api/v1/token/generate:
post:
consumes:
- application/json
description: Generate a JWT token for testing purposes
parameters:
- description: Token generation data
in: body
name: token
required: true
schema:
additionalProperties: true
type: object
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/api-service_internal_models_auth.TokenResponse'
"400":
description: Bad request
schema:
additionalProperties:
type: string
type: object
summary: Generate JWT token
tags:
- Token
/api/v1/token/generate-direct:
post:
consumes:
- application/json
description: Generate a JWT token directly with provided data
parameters:
- description: Token generation data
in: body
name: token
required: true
schema:
additionalProperties: true
type: object
produces:
- application/json
responses:
"200":
description: OK
schema:
$ref: '#/definitions/api-service_internal_models_auth.TokenResponse'
"400":
description: Bad request
schema:
additionalProperties:
type: string
type: object
summary: Generate JWT token directly
tags:
- Token
/component:
get:
consumes:
- application/json
description: Get list of components with pagination and filters
parameters:
- default: 10
description: Limit (max 100)
in: query
name: limit
type: integer
- default: 0
description: Offset
in: query
name: offset
type: integer
- description: Filter by parent page ID
in: query
name: page_id
type: integer
- description: Filter by status
in: query
name: active
type: string
produces:
- application/json
responses:
"200":
description: Success response
schema:
$ref: '#/definitions/api-service_internal_models_component.ComponentsGetResponse'
"400":
description: Bad request
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get Components List
tags:
- Components
post:
consumes:
- application/json
description: Create a new component
parameters:
- description: Component creation request
in: body
name: request
required: true
schema:
$ref: '#/definitions/api-service_internal_models_component.ComponentCreateRequest'
produces:
- application/json
responses:
"201":
description: Component created successfully
schema:
$ref: '#/definitions/api-service_internal_models_component.ComponentCreateResponse'
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Create Component
tags:
- Components
/component/{id}:
delete:
consumes:
- application/json
description: Delete a component
parameters:
- description: Component ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Component deleted successfully
schema:
$ref: '#/definitions/api-service_internal_models_component.ComponentDeleteResponse'
"400":
description: Invalid ID format
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Component not found
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Delete Component
tags:
- Components
put:
consumes:
- application/json
description: Update an existing component
parameters:
- description: Component ID
in: path
name: id
required: true
type: string
- description: Component update request
in: body
name: request
required: true
schema:
$ref: '#/definitions/api-service_internal_models_component.ComponentUpdateRequest'
produces:
- application/json
responses:
"200":
description: Component updated successfully
schema:
$ref: '#/definitions/api-service_internal_models_component.ComponentUpdateResponse'
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Component not found
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Update Component
tags:
- Components
/pages:
get:
consumes:
- application/json
description: Get list of pages with pagination and filters
parameters:
- default: 10
description: Limit (max 100)
in: query
name: limit
type: integer
- default: 0
description: Offset
in: query
name: offset
type: integer
- description: Filter by status
in: query
name: status
type: string
- description: Search in multiple fields
in: query
name: search
type: string
produces:
- application/json
responses:
"200":
description: Success response
schema:
$ref: '#/definitions/api-service_internal_models_pages.PagesGetResponse'
"400":
description: Bad request
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get Pages List
tags:
- Pages
post:
consumes:
- application/json
description: Create a new page
parameters:
- description: Rol_pages creation request
in: body
name: request
required: true
schema:
$ref: '#/definitions/api-service_internal_models_pages.PagesCreateRequest'
produces:
- application/json
responses:
"201":
description: Rol_pages created successfully
schema:
$ref: '#/definitions/api-service_internal_models_pages.PagesCreateResponse'
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Create Page
tags:
- Pages
/pages/{id}:
delete:
consumes:
- application/json
description: Delete a page
parameters:
- description: Rol_pages ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Rol_pages deleted successfully
schema:
$ref: '#/definitions/api-service_internal_models_pages.PagesDeleteResponse'
"400":
description: Invalid ID format
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Rol_pages not found
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Delete Page
tags:
- Pages
put:
consumes:
- application/json
description: Update an existing page
parameters:
- description: Rol_pages ID
in: path
name: id
required: true
type: string
- description: Rol_pages update request
in: body
name: request
required: true
schema:
$ref: '#/definitions/api-service_internal_models_pages.PagesUpdateRequest'
produces:
- application/json
responses:
"200":
description: Rol_pages updated successfully
schema:
$ref: '#/definitions/api-service_internal_models_pages.PagesUpdateResponse'
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Rol_pages not found
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Update Page
tags:
- Pages
/pages/bulk:
put:
consumes:
- application/json
description: Update multiple pages in a single request. Each object must include
"id". Use /pages/bulk [put].
parameters:
- description: Array of rol_pages update requests
in: body
name: request
required: true
schema:
items:
$ref: '#/definitions/api-service_internal_models_pages.PagesUpdateRequest'
type: array
produces:
- application/json
responses:
"200":
description: Updated pages
schema:
items:
$ref: '#/definitions/api-service_internal_models_pages.PagesUpdateResponse'
type: array
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Bulk update pages
tags:
- Pages
/patient:
get:
consumes:
- application/json
description: Get list of patients with pagination and filters, including their
attachments and payment types.
parameters:
- default: 10
description: Limit (max 100)
in: query
name: limit
type: integer
- default: 0
description: Offset
in: query
name: offset
type: integer
- description: Filter by active status (true/false)
in: query
name: active
type: string
- description: Search in medical_record_number, name, or phone_number
in: query
name: search
type: string
- default: false
description: Include aggregation summary
in: query
name: include_summary
type: boolean
produces:
- application/json
responses:
"200":
description: Success response
schema:
$ref: '#/definitions/api-service_internal_models_patient.PatientGetResponse'
"400":
description: Bad request
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get Patients List
tags:
- Patient
/patient/detail:
post:
consumes:
- application/json
description: Retrieves a single patient record by its ID, including attachments
and payment types.
parameters:
- description: Patient post request
in: body
name: request
required: true
schema:
$ref: '#/definitions/api-service_internal_models_patient.PatientPostRequest'
produces:
- application/json
responses:
"200":
description: Patient details retrieved successfully
schema:
$ref: '#/definitions/api-service_internal_models_patient.PatientCreateResponse'
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Patient not found
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get Patient by ID
tags:
- Patient
/permission:
get:
consumes:
- application/json
description: Get list of permissions with pagination and filters
parameters:
- default: 10
description: Limit (max 100)
in: query
name: limit
type: integer
- default: 0
description: Offset
in: query
name: offset
type: integer
- description: Filter by parent page ID
in: query
name: page_id
type: integer
- description: Filter by status
in: query
name: active
type: string
produces:
- application/json
responses:
"200":
description: Success response
schema:
$ref: '#/definitions/api-service_internal_models_permission.PermissionsGetResponse'
"400":
description: Bad request
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Get Permissions List
tags:
- Permissions
post:
consumes:
- application/json
description: Create a new permission
parameters:
- description: Permission creation request
in: body
name: request
required: true
schema:
$ref: '#/definitions/api-service_internal_models_permission.PermissionCreateRequest'
produces:
- application/json
responses:
"201":
description: Permission created successfully
schema:
$ref: '#/definitions/api-service_internal_models_permission.PermissionCreateResponse'
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Create Permission
tags:
- Permissions
/permission/{id}:
delete:
consumes:
- application/json
description: Delete a permission
parameters:
- description: Permission ID
in: path
name: id
required: true
type: string
produces:
- application/json
responses:
"200":
description: Permission deleted successfully
schema:
$ref: '#/definitions/api-service_internal_models_permission.PermissionDeleteResponse'
"400":
description: Invalid ID format
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Permission not found
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Delete Permission
tags:
- Permissions
put:
consumes:
- application/json
description: Update an existing permission
parameters:
- description: Permission ID
in: path
name: id
required: true
type: string
- description: Permission update request
in: body
name: request
required: true
schema:
$ref: '#/definitions/api-service_internal_models_permission.PermissionUpdateRequest'
produces:
- application/json
responses:
"200":
description: Permission updated successfully
schema:
$ref: '#/definitions/api-service_internal_models_permission.PermissionUpdateResponse'
"400":
description: Bad request or validation error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"404":
description: Permission not found
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
"500":
description: Internal server error
schema:
$ref: '#/definitions/api-service_internal_models.ErrorResponse'
summary: Update Permission
tags:
- Permissions
schemes:
- http
- https
swagger: "2.0"