front_ponto_eletronico/docs/user_service_roles/create.yml
2025-03-17 15:00:51 -03:00

142 lines
4.2 KiB
YAML

Cria uma nova função de serviço para um usuário e suas permissões
---
tags:
- User Service Roles
summary: Cria uma nova função de serviço para um usuário e associa permissões
security:
- bearerAuth: []
parameters:
- in: body
name: body
description: Dados para a criação de uma nova função de serviço para um usuário, incluindo as permissões associadas
required: true
schema:
type: object
properties:
user_id:
type: integer
description: ID do usuário
example: 1
service_instance_id:
type: integer
description: ID da instância de serviço
example: 1
service_role_id:
type: integer
description: ID do papel de serviço
example: 1
created_at:
type: string
format: date-time
description: Data de criação
example: "2024-12-14T10:00:00Z"
permissions:
type: array
description: Lista de permissões associadas ao papel de serviço
items:
type: object
properties:
permission_id:
type: integer
description: ID da permissão
example: 1
permission_type:
type: string
description: Tipo de permissão (read, create, update, delete)
enum:
- "read"
- "create"
- "update"
- "delete"
example: "read"
examples:
application/json:
user_id: 1
service_instance_id: 1
service_role_id: 1
created_at: "2024-12-14T10:00:00Z"
permissions:
- permission_id: 1
permission_type: "read"
- permission_id: 2
permission_type: "create"
- permission_id: 3
permission_type: "update"
- permission_id: 4
permission_type: "delete"
responses:
201:
description: Função de serviço para o usuário criada com sucesso, incluindo permissões
content:
application/json:
schema:
type: object
properties:
id:
type: integer
description: ID da nova função de serviço
user_id:
type: integer
description: ID do usuário
service_instance_id:
type: integer
description: ID da instância de serviço
service_role_id:
type: integer
description: ID do papel de serviço
created_at:
type: string
format: date-time
description: Data de criação
permissions:
type: array
description: Permissões associadas a essa função de serviço
items:
type: object
properties:
permission_id:
type: integer
permission_type:
type: string
examples:
application/json:
id: 1
user_id: 1
service_instance_id: 1
service_role_id: 1
created_at: "2024-12-14T10:00:00Z"
permissions:
- permission_id: 1
permission_type: "read"
- permission_id: 2
permission_type: "create"
- permission_id: 3
permission_type: "update"
- permission_id: 4
permission_type: "delete"
400:
description: Requisição inválida (dados incorretos ou ausentes)
content:
application/json:
schema:
type: object
properties:
error:
type: string
examples:
application/json:
error: "Os campos 'user_id', 'service_instance_id' e 'service_role_id' são obrigatórios."
401:
description: Token inválido ou ausente
content:
application/json:
schema:
type: object
properties:
error:
type: string
examples:
application/json:
error: "Token inválido ou ausente"