{
  "openapi" : "3.0.1",
  "info" : {
    "title" : "udi-backend",
    "description" : "Feito com Arquitetura Spring Boot da Anvisa",
    "contact" : {
      "name" : "Contato",
      "email" : "arquitetura@anvisa.gov.br"
    },
    "version" : "1.6.1"
  },
  "servers" : [ {
    "url" : "https://udi-backend.prd.apps.anvisa.gov.br",
    "description" : "Generated server url"
  } ],
  "security" : [ {
    "Keycloak" : [ "*" ]
  } ],
  "tags" : [ {
    "name" : "Dispositivos",
    "description" : "Operações sobre dispositivos."
  }, {
    "name" : "Configuração do Usuário",
    "description" : "Operações sobre as preferências e configurações particulares ao usuário."
  }, {
    "name" : "Chave de submissão de UDI",
    "description" : "Controle sobre as chaves de submissão de cadastros UDI."
  }, {
    "name" : "Rascunhos",
    "description" : "Operações sobre rascunhos de formulário UDI."
  }, {
    "name" : "Usuario",
    "description" : "Operações sobre Usuario Terceiro."
  }, {
    "name" : "Produto",
    "description" : "Operações sobre produtos restritos."
  }, {
    "name" : "Usuário Interno",
    "description" : "Operações sobre os dados de usuários internos Anvisa."
  }, {
    "name" : "Submissão de UDI",
    "description" : "Submissão de cadastros UDI."
  }, {
    "name" : "Produto",
    "description" : "Operações sobre produtos."
  }, {
    "name" : "Tarefas",
    "description" : "Operações sobre tarefas do sistema."
  }, {
    "name" : "Termos GMDN",
    "description" : "Operações sobre termos GMDN"
  }, {
    "name" : "🔗 Feign - ViaCep",
    "description" : "Cliente para o ViaCep",
    "externalDocs" : {
      "description" : "Mais informações",
      "url" : "https://viacep.com.br"
    }
  }, {
    "name" : "Representante",
    "description" : "Operações sobre representantes de instituição."
  }, {
    "name" : "Domínio",
    "description" : "Consta de entidades do domínio."
  }, {
    "name" : "Usuário Alocado",
    "description" : "Operações sobre a acesso de usuários alocados em instituições."
  } ],
  "paths" : {
    "/v1/usuario-configuracao/idioma" : {
      "put" : {
        "tags" : [ "Configuração do Usuário" ],
        "summary" : "Registrar configuração de idioma",
        "description" : "Persiste a preferência de idioma do usuário",
        "operationId" : "persistirIdioma",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UsuarioConfiguracaoDTO"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UsuarioConfiguracaoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/rascunhos" : {
      "get" : {
        "tags" : [ "Rascunhos" ],
        "summary" : "Listar rascunhos",
        "description" : "Listar rascunhos do usuário autenticado",
        "operationId" : "listarRascunhos",
        "parameters" : [ {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RascunhoDTO"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Rascunhos" ],
        "summary" : "Atualizar rascunho",
        "description" : "Atualizar um novo rascunho",
        "operationId" : "atualizarRascunho",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "rascunho" : {
                    "$ref" : "#/components/schemas/RascunhoDTO"
                  },
                  "currentUser" : {
                    "$ref" : "#/components/schemas/CurrentUser"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RascunhoDTO"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Rascunhos" ],
        "summary" : "Registrar rascunho",
        "description" : "Registrar um novo rascunho",
        "operationId" : "registarRascunho",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "rascunho" : {
                    "$ref" : "#/components/schemas/RascunhoDTO"
                  },
                  "currentUser" : {
                    "$ref" : "#/components/schemas/CurrentUser"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "201" : {
            "description" : "Created"
          }
        }
      }
    },
    "/v1/dispositivos" : {
      "put" : {
        "tags" : [ "Dispositivos" ],
        "summary" : "Editar dispositivo",
        "description" : "Editar dispositivo",
        "operationId" : "editarDispositivo",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "dispositivo" : {
                    "$ref" : "#/components/schemas/DispositivoDTO"
                  },
                  "currentUser" : {
                    "$ref" : "#/components/schemas/CurrentUser"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "*/*" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DispositivoDTO"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Dispositivos" ],
        "summary" : "Cadastrar dispositivo",
        "description" : "Cadastrar dispositivo",
        "operationId" : "cadastrarDispositivo",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "dispositivo" : {
                    "$ref" : "#/components/schemas/DispositivoDTO"
                  },
                  "currentUser" : {
                    "$ref" : "#/components/schemas/CurrentUser"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "201" : {
            "description" : "Created",
            "content" : {
              "*/*" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DispositivoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dispositivos/substituir" : {
      "put" : {
        "tags" : [ "Dispositivos" ],
        "summary" : "Substituir dispositivo",
        "description" : "Substituir dispositivo",
        "operationId" : "substituirDispositivo",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "dispositivo" : {
                    "$ref" : "#/components/schemas/DispositivoDTO"
                  },
                  "currentUser" : {
                    "$ref" : "#/components/schemas/CurrentUser"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "*/*" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DispositivoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dispositivos/bloqueio" : {
      "put" : {
        "tags" : [ "Dispositivos" ],
        "summary" : "Definir bloqueio dispositivo",
        "description" : "Define o status de bloqueado de um dispositivo",
        "operationId" : "definirBloqueioDispositivo",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "bloqueio" : {
                    "$ref" : "#/components/schemas/BloqueioDispositivoDTO"
                  },
                  "currentUser" : {
                    "$ref" : "#/components/schemas/CurrentUser"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK"
          }
        }
      }
    },
    "/v1/chave-submissao/{id}/inativar" : {
      "put" : {
        "tags" : [ "Chave de submissão de UDI" ],
        "summary" : "Inativar chave",
        "description" : "Inativa uma chave de submissão",
        "operationId" : "inativarChave",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CurrentUser"
              }
            }
          }
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found"
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          }
        }
      }
    },
    "/public/v1/usuarioTerceiro/atualizarUsuarioTerceiro" : {
      "put" : {
        "tags" : [ "Usuario" ],
        "operationId" : "atualizarUsuarioTerceiro",
        "parameters" : [ {
          "name" : "Accept-Language",
          "in" : "header",
          "required" : false,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "usuarioTerceiroDTO" : {
                    "$ref" : "#/components/schemas/UsuarioTerceiroDTO"
                  },
                  "currentUser" : {
                    "$ref" : "#/components/schemas/CurrentUser"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          }
        }
      }
    },
    "/v1/usuario-alocado/representante/{idRepresentante}" : {
      "post" : {
        "tags" : [ "Usuário Alocado" ],
        "summary" : "Persiste e obter acesso de representante",
        "description" : "Persiste e obtem o acesso de um representante a uma instituição",
        "operationId" : "persistirAcesso",
        "parameters" : [ {
          "name" : "idRepresentante",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UsuarioAlocadoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/task" : {
      "post" : {
        "tags" : [ "Tarefas" ],
        "summary" : "Executar tarefa",
        "description" : "Força a execução de uma tarefa do sistema",
        "operationId" : "executar",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/AppTaskDTO"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "*/*" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TaskExecutionDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/submissao" : {
      "post" : {
        "tags" : [ "Submissão de UDI" ],
        "summary" : "Submissão de cadastro UDI em massa",
        "description" : "Permite a criação e alteração de cadastro UDI em massa",
        "operationId" : "submeter",
        "requestBody" : {
          "content" : {
            "multipart/form-data" : {
              "schema" : {
                "required" : [ "file" ],
                "type" : "object",
                "properties" : {
                  "file" : {
                    "type" : "array",
                    "items" : {
                      "type" : "string",
                      "format" : "binary"
                    }
                  },
                  "currentUser" : {
                    "$ref" : "#/components/schemas/CurrentUser"
                  }
                }
              }
            }
          }
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "*/*" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SubmissaoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/chave-submissao" : {
      "get" : {
        "tags" : [ "Chave de submissão de UDI" ],
        "summary" : "Criação de chave de submissão de cadastro UDI",
        "description" : "Permite a criação de chaves de acesso para submissão de cadastros UDI",
        "operationId" : "obterChaves",
        "parameters" : [ {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        }, {
          "name" : "isAcessoExterno",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "boolean",
            "default" : false
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Chave de submissão de UDI" ],
        "summary" : "Criação de chave de submissão de cadastro UDI",
        "description" : "Permite a criação de chaves de acesso para submissão de cadastros UDI",
        "operationId" : "criarChave",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "dto" : {
                    "$ref" : "#/components/schemas/ChaveSubmissaoDTO"
                  },
                  "currentUser" : {
                    "$ref" : "#/components/schemas/CurrentUser"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "201" : {
            "description" : "Created",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          }
        }
      }
    },
    "/public/v1/usuarioTerceiro" : {
      "get" : {
        "tags" : [ "Usuario" ],
        "summary" : "Recupera a lista de usuários",
        "description" : "Recupera todos os usuários",
        "operationId" : "recuperarTodosUsuarios",
        "parameters" : [ {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Usuario" ],
        "summary" : "Cadastrar usuários",
        "description" : "Cadastrar múltiplos usuários",
        "operationId" : "cadastrarUsuarios",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "dtos" : {
                    "type" : "array",
                    "description" : "Lista de cadastros a serem adicionados",
                    "items" : {
                      "$ref" : "#/components/schemas/UsuarioTerceiroDTO"
                    }
                  },
                  "currentUser" : {
                    "$ref" : "#/components/schemas/CurrentUser"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK"
          }
        }
      }
    },
    "/public/v1/usuarioTerceiro/verificarEmail" : {
      "post" : {
        "tags" : [ "Usuario" ],
        "summary" : "Verificar emails",
        "description" : "Verificar se os emails dos usuários já existem no Keycloak",
        "operationId" : "verificarEmail",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "dtos" : {
                    "type" : "array",
                    "description" : "Lista de usuários a serem verificados",
                    "items" : {
                      "$ref" : "#/components/schemas/UsuarioTerceiroDTO"
                    }
                  },
                  "currentUser" : {
                    "$ref" : "#/components/schemas/CurrentUser"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object",
                  "additionalProperties" : {
                    "type" : "boolean"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/public/v1/restricao" : {
      "get" : {
        "tags" : [ "Produto" ],
        "operationId" : "recuperarTodosUsuarios_1",
        "parameters" : [ {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/ProdutoRestricaoViewBuscaDTO"
                  }
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Produto" ],
        "summary" : "Cadastrar Produtos Restritos",
        "description" : "Produtos Restritos",
        "operationId" : "cadastrarProdutos",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "type" : "object",
                "properties" : {
                  "dtos" : {
                    "type" : "array",
                    "description" : "Lista de cadastros a serem adicionados",
                    "items" : {
                      "$ref" : "#/components/schemas/ProdutoRestricaoViewBuscaDTO"
                    }
                  },
                  "currentUser" : {
                    "$ref" : "#/components/schemas/CurrentUser"
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK"
          }
        }
      }
    },
    "/{cep}/json" : {
      "get" : {
        "tags" : [ "🔗 Feign - ViaCep" ],
        "summary" : "Recupera endereço por CEP",
        "description" : "Método usado para recuperar endereço por CEP.",
        "operationId" : "obterEnderecoPorCep",
        "parameters" : [ {
          "name" : "cep",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "*/*" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EnderecoVO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/usuario-interno" : {
      "get" : {
        "tags" : [ "Usuário Interno" ],
        "summary" : "Obter cadastro do usuário",
        "description" : "Recupera o cadastro interno do usuário autenticado",
        "operationId" : "recurperarAlocacoes",
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found"
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UsuarioInternoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/usuario-alocado" : {
      "get" : {
        "tags" : [ "Usuário Alocado" ],
        "summary" : "Recuperar alocações",
        "description" : "Recupera as alocações associadas ao usuário",
        "operationId" : "recurperarAlocacoes_1",
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UsuarioAlocadoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/usuario-alocado/{id}" : {
      "get" : {
        "tags" : [ "Usuário Alocado" ],
        "summary" : "Recuperar acesso",
        "description" : "Recupera o acesso de usuário alocado",
        "operationId" : "recurperarAlocacao",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UsuarioAlocadoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/termo-gmdn/search" : {
      "get" : {
        "tags" : [ "Termos GMDN" ],
        "summary" : "Pesquisar termos",
        "description" : "Pesquisar termos GMDN por uma descrição",
        "operationId" : "pesquisarTermos",
        "parameters" : [ {
          "name" : "query",
          "in" : "query",
          "description" : "Filtro a ser utilizado",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/task/{task}" : {
      "get" : {
        "tags" : [ "Tarefas" ],
        "summary" : "Obter histórico de execuções por tarefa",
        "description" : "Lista o histórico de execuções de uma determinada tarefa do sistema",
        "operationId" : "obterExecucoes",
        "parameters" : [ {
          "name" : "task",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string",
            "enum" : [ "EXCLUSAO_RASCUNHO", "MANUTENCAO_TERMOS_GMDN", "MANUTENCAO_HISTORICO_UDI", "DESCONTINUACAO_CADASTRO" ]
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/submissao/paginado" : {
      "get" : {
        "tags" : [ "Submissão de UDI" ],
        "summary" : "Recupera a lista submissões paginada",
        "description" : "Recupera uma lista submissões comcapacidade de paginação e ordenação",
        "operationId" : "pesquisarDispositivoPaged",
        "parameters" : [ {
          "name" : "pageIndex",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "pageSize",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "sortField",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "string",
            "default" : "id"
          }
        }, {
          "name" : "sortType",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "string",
            "default" : "DESC"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PageableResponseModel"
                }
              }
            }
          }
        }
      }
    },
    "/v1/representante" : {
      "get" : {
        "tags" : [ "Representante" ],
        "summary" : "Lista representações",
        "description" : "Recupera a lista de representações do usuário",
        "operationId" : "recuperarRepresentacoes",
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/rascunhos/{id}/download" : {
      "get" : {
        "tags" : [ "Rascunhos" ],
        "operationId" : "exportarRascunho",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK"
          }
        }
      }
    },
    "/v1/rascunhos/empresa/{cnpj}/download" : {
      "get" : {
        "tags" : [ "Rascunhos" ],
        "operationId" : "exportarRascunhoEmpresa",
        "parameters" : [ {
          "name" : "cnpj",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK"
          }
        }
      }
    },
    "/v1/rascunhos/download" : {
      "get" : {
        "tags" : [ "Rascunhos" ],
        "operationId" : "exportarRascunhos",
        "parameters" : [ {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK"
          }
        }
      }
    },
    "/v1/produtos/pesquisar" : {
      "get" : {
        "tags" : [ "Produto" ],
        "operationId" : "pesquisarDispositivo",
        "parameters" : [ {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        }, {
          "name" : "numeroRegistro",
          "in" : "query",
          "description" : "Filtro por número de registro",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "nomeProduto",
          "in" : "query",
          "description" : "Filtro por nome comercial do produto",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "razaoSocialEmpresa",
          "in" : "query",
          "description" : "Filtro por razão social da detentora",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "statusVigencia",
          "in" : "query",
          "description" : "Filtro por statusVigencia",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/ProdutoViewBuscaDTO"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/produtos/numeroRegistro/{nuRegistro}" : {
      "get" : {
        "tags" : [ "Produto" ],
        "summary" : "Obter produto por número de registro",
        "description" : "Recupera detalhes de um produto por número de registro",
        "operationId" : "recuperarPorId",
        "parameters" : [ {
          "name" : "nuRegistro",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found"
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RegistroProdutoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/produtos/buscDisp" : {
      "get" : {
        "tags" : [ "Produto" ],
        "operationId" : "buscaDisp",
        "parameters" : [ {
          "name" : "numeroRegistro",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/ProdutoViewBuscaDTO"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/v1/dispositivos/{id}" : {
      "get" : {
        "tags" : [ "Dispositivos" ],
        "summary" : "Obter dispositivo",
        "description" : "Consulta os dados de dispositivo por id",
        "operationId" : "obterDispositivoPorId",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found"
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DispositivoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dispositivos/utilizacao/{diCode}/{numeroRegistro}/{onlyRecondicionado}" : {
      "get" : {
        "tags" : [ "Dispositivos" ],
        "summary" : "Obter registros associados a um código UDI-DI",
        "description" : "Obtem registros de dispositivos associados a um código UDI-DI",
        "operationId" : "obterUtilizacao",
        "parameters" : [ {
          "name" : "diCode",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "numeroRegistro",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "onlyRecondicionado",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "boolean"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/DIUtilizadoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dispositivos/transferencia-titularidade/{numeroRegistro}" : {
      "get" : {
        "tags" : [ "Dispositivos" ],
        "summary" : "Obter transferência de titularidade associada a um número de registro sucessor",
        "description" : "Consulta cadastros com número de registro cancelado em uma transferência de titularidade identificada por um número de registro sucessor",
        "operationId" : "obterTransferenciaTitularidade",
        "parameters" : [ {
          "name" : "numeroRegistro",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found"
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TransferenciaTitularidadeDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dispositivos/substituicao/{udiCode}" : {
      "get" : {
        "tags" : [ "Dispositivos" ],
        "summary" : "Obter dispositivo para substituição",
        "description" : "Consulta os dados de dispositivo passível de substituição pelo seu código UDI-DI",
        "operationId" : "obterDispositivoParaSubstituicao",
        "parameters" : [ {
          "name" : "udiCode",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found"
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SubstituicaoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dispositivos/produto-formulario/{numeroRegistro}" : {
      "get" : {
        "tags" : [ "Dispositivos" ],
        "summary" : "Obter informações de um produto que será cadastrado",
        "description" : "Consulta informações de um produto por número de registro para dar inicio ao cadastro de um novo formulário UDI",
        "operationId" : "obterProdutoFormulario",
        "parameters" : [ {
          "name" : "numeroRegistro",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found"
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ProdutoFormularioDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dispositivos/paginado" : {
      "get" : {
        "tags" : [ "Dispositivos" ],
        "summary" : "Recupera a lista dispositivos paginada",
        "description" : "Recupera uma lista dispositivos, com capacidade de paginação, ordenação e filtro",
        "operationId" : "pesquisarDispositivoPaged_1",
        "parameters" : [ {
          "name" : "pageIndex",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "pageSize",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "sortField",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "string",
            "default" : "id"
          }
        }, {
          "name" : "sortType",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "string",
            "default" : "DESC"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        }, {
          "name" : "codigo",
          "in" : "query",
          "description" : "Filtro por código UDI-DI",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "codigoParcial",
          "in" : "query",
          "description" : "Filtro por código UDI-DI com texto incompleto",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "numeroRegistro",
          "in" : "query",
          "description" : "Filtro por número de registro",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "numeroRegistroParcial",
          "in" : "query",
          "description" : "Filtro por número de registro com texto incompleto",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "nomeComercial",
          "in" : "query",
          "description" : "Filtro por nome do produto",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "nuCnpjDetentor",
          "in" : "query",
          "description" : "Filtro por CNPJ do detentor do registro",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "razaoSocialFabricanteLegal",
          "in" : "query",
          "description" : "Filtro por nome do fabricante legal",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "ativo",
          "in" : "query",
          "description" : "Filtro pelo status de ativo, que se traduz na data de descontinução estar atingida ou não",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PageableResponseModel"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dispositivos/detalhado" : {
      "get" : {
        "tags" : [ "Dispositivos" ],
        "summary" : "Recupera a lista dispositivos",
        "description" : "Recupera uma lista dispositivos, com capacidade a partir de um filtro",
        "operationId" : "detalharDispositivo",
        "parameters" : [ {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        }, {
          "name" : "codigo",
          "in" : "query",
          "description" : "Filtro por código UDI-DI",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "numeroRegistro",
          "in" : "query",
          "description" : "Filtro por número de registro",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "nomeComercial",
          "in" : "query",
          "description" : "Filtro por nome do produto",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "razaoSocialFabricanteLegal",
          "in" : "query",
          "description" : "Filtro por nome do fabricante legal",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "ativo",
          "in" : "query",
          "description" : "Filtro pelo status de ativo, que se traduz na data de descontinução estar atingida ou não",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          }
        }
      }
    },
    "/v1/dispositivos/detalhado/download" : {
      "get" : {
        "tags" : [ "Dispositivos" ],
        "summary" : "Exportar a lista dispositivos",
        "description" : "Exporta uma lista dispositivos em formato XML",
        "operationId" : "exportarDispositivo",
        "parameters" : [ {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        }, {
          "name" : "codigo",
          "in" : "query",
          "description" : "Filtro por código UDI-DI",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "numeroRegistro",
          "in" : "query",
          "description" : "Filtro por número de registro",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "nomeComercial",
          "in" : "query",
          "description" : "Filtro por nome do produto",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "razaoSocialFabricanteLegal",
          "in" : "query",
          "description" : "Filtro por nome do fabricante legal",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "ativo",
          "in" : "query",
          "description" : "Filtro pelo status de ativo, que se traduz na data de descontinução estar atingida ou não",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "text/xml" : { }
            }
          }
        }
      }
    },
    "/v1/dispositivos/consulta/{id}" : {
      "get" : {
        "tags" : [ "Dispositivos" ],
        "summary" : "Obter detalhes de um dispositivo",
        "description" : "Consulta os dados detalhados de dispositivo por id",
        "operationId" : "consultarDispositivoPorId",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found"
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ConsultaDispositivoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/v1/chave-submissao/{id}" : {
      "get" : {
        "tags" : [ "Chave de submissão de UDI" ],
        "summary" : "Obter token",
        "description" : "Obtem o token associado a uma chave",
        "operationId" : "obterToken",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found"
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ChaveSubmissaoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/public/v1/usuarioTerceiro/{id}" : {
      "get" : {
        "tags" : [ "Usuario" ],
        "summary" : "Recupera um produto por ID",
        "description" : "Recupera um produto por ID",
        "operationId" : "recuperarPorId_1",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UsuarioTerceiroDTO"
                }
              }
            }
          }
        }
      }
    },
    "/public/v1/usuarioTerceiro/pesquisar" : {
      "get" : {
        "tags" : [ "Usuario" ],
        "operationId" : "pesquisarDispositivo_1",
        "parameters" : [ {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        }, {
          "name" : "usuario",
          "in" : "query",
          "description" : "Filtro por usuário",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "empresa",
          "in" : "query",
          "description" : "Filtro por empresa",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "status",
          "in" : "query",
          "description" : "Filtro por status",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "email",
          "in" : "query",
          "description" : "Filtro por email",
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "numeroRegistro",
          "in" : "query",
          "description" : "Filtro por número de registro",
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/ConsultaUsuarioTerceiroDTO"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/public/v1/restricao/pesquisa" : {
      "get" : {
        "tags" : [ "Produto" ],
        "operationId" : "Pesquisa",
        "parameters" : [ {
          "name" : "codTecnico",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "nomeTecnico",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/ProdutoRestricaoViewBuscaDTO"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/public/v1/restricao/buscProd" : {
      "get" : {
        "tags" : [ "Produto" ],
        "operationId" : "buscaDisp_1",
        "parameters" : [ {
          "name" : "codTecnico",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "nomeTecnico",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "string"
          }
        }, {
          "name" : "currentUser",
          "in" : "query",
          "required" : true,
          "schema" : {
            "$ref" : "#/components/schemas/CurrentUser"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/ProdutoRestricaoViewBuscaDTO"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/public/v1/dominio/paises" : {
      "get" : {
        "tags" : [ "Domínio" ],
        "summary" : "Obter paises",
        "description" : "Recupera lista de paises registrados na base de dados Anvisa",
        "operationId" : "findAllPaises",
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/KeyValueDTO"
                }
              }
            }
          }
        }
      }
    },
    "/public/v1/dominio/metodos-esterializacao" : {
      "get" : {
        "tags" : [ "Domínio" ],
        "summary" : "Obter métodos de esterialização",
        "description" : "Recupera lista de métodos de esterialização registrados na base de dados Anvisa",
        "operationId" : "findAllMetodosEsterializacao",
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/KeyValueDTO"
                }
              }
            }
          }
        }
      }
    },
    "/public/v1/dominio/empresas" : {
      "get" : {
        "tags" : [ "Domínio" ],
        "summary" : "Pesquisar empresas",
        "description" : "Pesquisa uma lista paginada de empresas",
        "operationId" : "findEmpresas",
        "parameters" : [ {
          "name" : "pageIndex",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 0
          }
        }, {
          "name" : "pageSize",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "integer",
            "format" : "int32",
            "default" : 10
          }
        }, {
          "name" : "sortField",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "string",
            "default" : "razaoSocial"
          }
        }, {
          "name" : "sortType",
          "in" : "query",
          "required" : false,
          "schema" : {
            "type" : "string",
            "default" : "ASC"
          }
        }, {
          "name" : "filter",
          "in" : "query",
          "description" : "Texto livre que será utilizado tanto para o filtro por CNPJ quanto pela razão social",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/PageableResponseModel"
                }
              }
            }
          }
        }
      }
    },
    "/v1/rascunhos/{id}" : {
      "delete" : {
        "tags" : [ "Rascunhos" ],
        "summary" : "Remover rascunho",
        "description" : "Remover rascunho por ID",
        "operationId" : "removerRascunho",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CurrentUser"
              }
            }
          }
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found"
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK",
            "content" : {
              "*/*" : {
                "schema" : {
                  "$ref" : "#/components/schemas/RascunhoDTO"
                }
              }
            }
          }
        }
      }
    },
    "/public/v1/restricao/{id}" : {
      "delete" : {
        "tags" : [ "Produto" ],
        "summary" : "Deletar (lógico) Produto Restrito por ID",
        "description" : "Marca um produto como excluído logicamente",
        "operationId" : "deletarProduto",
        "parameters" : [ {
          "name" : "id",
          "in" : "path",
          "required" : true,
          "schema" : {
            "type" : "integer",
            "format" : "int64"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CurrentUser"
              }
            }
          }
        },
        "responses" : {
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "*/*" : {
                "schema" : {
                  "type" : "object"
                }
              }
            }
          },
          "200" : {
            "description" : "OK"
          }
        }
      }
    }
  },
  "components" : {
    "schemas" : {
      "UsuarioConfiguracaoDTO" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "idioma" : {
            "type" : "string",
            "enum" : [ "PT_BR", "EN_US" ]
          }
        }
      },
      "RascunhoDTO" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "numeroRegistro" : {
            "type" : "string"
          },
          "conteudo" : {
            "type" : "string"
          },
          "dtCriacao" : {
            "type" : "string",
            "format" : "date-time"
          },
          "dtUltimaAlteracao" : {
            "type" : "string",
            "format" : "date-time"
          }
        }
      },
      "BaseEntityObject" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "object"
          }
        }
      },
      "CurrentUser" : {
        "type" : "object",
        "properties" : {
          "principal" : {
            "type" : "object",
            "properties" : {
              "name" : {
                "type" : "string"
              }
            }
          },
          "usuario" : {
            "$ref" : "#/components/schemas/BaseEntityObject"
          },
          "usuarioAlocado" : {
            "type" : "boolean"
          },
          "usuarioInterno" : {
            "type" : "boolean"
          }
        }
      },
      "DIDTO" : {
        "required" : [ "codigo", "entidadeEmissora" ],
        "type" : "object",
        "properties" : {
          "codigo" : {
            "maxLength" : 25,
            "minLength" : 6,
            "type" : "string"
          },
          "entidadeEmissora" : {
            "type" : "string",
            "enum" : [ "GS1", "HIBCC", "ICCBBA" ]
          }
        }
      },
      "DetalheEmpresaDTO" : {
        "required" : [ "endereco", "idPais", "razaoSocial" ],
        "type" : "object",
        "properties" : {
          "razaoSocial" : {
            "maxLength" : 200,
            "minLength" : 0,
            "type" : "string"
          },
          "endereco" : {
            "maxLength" : 200,
            "minLength" : 0,
            "type" : "string"
          },
          "idPais" : {
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "DispositivoDTO" : {
        "required" : [ "categoria", "codigoGmdn", "compatibilidadeComRM", "fabricanteLegal", "hasDtManufRecondReproc", "hasDtValidade", "hasIdentificadorUnidadeUtilizacao", "hasNumeroLote", "hasNumeroSerie", "informacoesAtendimentoConsumidor", "isDispositivoCombinado", "isDispositivoEsteril", "isMaterialBiologico", "isPassivelReutilizacao", "isPossuiLatex", "isUsoUnico", "nomeComercial", "numeroRegistro", "qtdPorEmbalagem", "tipoProduto", "udiDi", "versaoModelo" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "integer",
            "format" : "int64"
          },
          "udiDi" : {
            "$ref" : "#/components/schemas/DIDTO"
          },
          "udiDiOriginal" : {
            "$ref" : "#/components/schemas/DIDTO"
          },
          "numeroRegistro" : {
            "maxLength" : 11,
            "minLength" : 0,
            "type" : "string"
          },
          "tipoProduto" : {
            "type" : "string",
            "enum" : [ "DESENVOLVIDO", "RECONDICIONADO", "REPROCESSADO" ]
          },
          "recondicionadora" : {
            "$ref" : "#/components/schemas/DetalheEmpresaDTO"
          },
          "nomeComercial" : {
            "maxLength" : 80,
            "minLength" : 0,
            "type" : "string"
          },
          "versaoModelo" : {
            "maxLength" : 80,
            "minLength" : 0,
            "type" : "string"
          },
          "codigoCatalogo" : {
            "maxLength" : 80,
            "minLength" : 0,
            "type" : "string"
          },
          "fabricanteLegal" : {
            "$ref" : "#/components/schemas/DetalheEmpresaDTO"
          },
          "qtdPorEmbalagem" : {
            "maximum" : 999999999,
            "type" : "integer",
            "format" : "int64"
          },
          "categoria" : {
            "type" : "string"
          },
          "isUsoUnico" : {
            "type" : "boolean"
          },
          "isPassivelReutilizacao" : {
            "type" : "boolean"
          },
          "isSemLimitePredefinido" : {
            "type" : "boolean"
          },
          "qtdMaxReutilizacoes" : {
            "maximum" : 999999999,
            "type" : "integer",
            "format" : "int64"
          },
          "isDispositivoEsteril" : {
            "type" : "boolean"
          },
          "isRequerEsterilizacao" : {
            "type" : "boolean"
          },
          "isPossuiLatex" : {
            "type" : "boolean"
          },
          "isUsoLeigo" : {
            "type" : "boolean"
          },
          "isDispositivoCombinado" : {
            "type" : "boolean"
          },
          "isMaterialBiologico" : {
            "type" : "boolean"
          },
          "isIncorporaIA" : {
            "type" : "boolean"
          },
          "compatibilidadeComRM" : {
            "type" : "string"
          },
          "contraindicacoesCriticas" : {
            "maxLength" : 5000,
            "minLength" : 0,
            "type" : "string"
          },
          "condicoesArmazenamentoManuseio" : {
            "maxLength" : 5000,
            "minLength" : 0,
            "type" : "string"
          },
          "caracteristicasDimensionais" : {
            "maxLength" : 5000,
            "minLength" : 0,
            "type" : "string"
          },
          "codigoGmdn" : {
            "maxLength" : 10,
            "minLength" : 0,
            "type" : "string"
          },
          "hasIdentificadorUnidadeUtilizacao" : {
            "type" : "boolean"
          },
          "descIdentificadorUnidadeUtilizacao" : {
            "maxLength" : 2147483647,
            "minLength" : 6,
            "type" : "string"
          },
          "hasNumeroLote" : {
            "type" : "boolean"
          },
          "hasNumeroSerie" : {
            "type" : "boolean"
          },
          "hasDtValidade" : {
            "type" : "boolean"
          },
          "hasDtManufRecondReproc" : {
            "type" : "boolean"
          },
          "hasDtLiberacaoSAMD" : {
            "type" : "boolean"
          },
          "hasVersaoSoftware" : {
            "type" : "boolean"
          },
          "informacoesSuplementares" : {
            "maxLength" : 5000,
            "minLength" : 0,
            "type" : "string"
          },
          "informacoesAtendimentoConsumidor" : {
            "maxLength" : 5000,
            "minLength" : 0,
            "type" : "string"
          },
          "dtDescontinuacao" : {
            "type" : "string",
            "format" : "date"
          },
          "dtPublicacao" : {
            "type" : "string",
            "format" : "date"
          },
          "nomeProdutoRegularizacao" : {
            "type" : "string"
          },
          "codigoVersaoVinculado" : {
            "type" : "string"
          },
          "codigoVersaoPrevio" : {
            "type" : "string"
          },
          "tipoSucessao" : {
            "type" : "string",
            "enum" : [ "SUBSTITUICAO", "TRANSFERENCIA", "DESCONTINUACAO" ]
          },
          "desbloqueado" : {
            "type" : "boolean"
          },
          "codigoVersao" : {
            "type" : "string"
          },
          "numeroRevisao" : {
            "type" : "integer",
            "format" : "int64"
          },
          "dtCriacao" : {
            "type" : "string",
            "format" : "date"
          },
          "embalagens" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EmbalagemDTO"
            }
          },
          "metodosEsterilizacao" : {
            "uniqueItems" : true,
            "type" : "array",
            "items" : {
              "type" : "integer",
              "format" : "int64"
            }
          },
          "estagioCadastro" : {
            "type" : "string",
            "enum" : [ "DESBLOQUEADO", "NAO_PUBLICADO", "EM_CARENCIA", "CONSOLIDADO" ]
          }
        }
      },
      "EmbalagemDTO" : {
        "required" : [ "nivelEmbalagem", "qtdPorEmbalagem", "udiDi" ],
        "type" : "object",
        "properties" : {
          "udiDi" : {
            "$ref" : "#/components/schemas/DIDTO"
          },
          "nivelEmbalagem" : {
            "maximum" : 999999,
            "minimum" : 2,
            "type" : "integer",
            "format" : "int64"
          },
          "qtdPorEmbalagem" : {
            "maximum" : 999999999,
            "minimum" : 1,
            "type" : "integer",
            "format" : "int64"
          }
        }
      },
      "BloqueioDispositivoDTO" : {
        "required" : [ "bloqueado", "id" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "integer",
            "format" : "int64"
          },
          "bloqueado" : {
            "type" : "boolean"
          }
        },
        "description" : "Representação dos parâmetros de bloqueio"
      },
      "ProdutoViewEntity" : {
        "type" : "object",
        "properties" : {
          "cod" : {
            "type" : "integer",
            "format" : "int64"
          },
          "numeroRegistro" : {
            "type" : "string"
          },
          "nomeProduto" : {
            "type" : "string"
          },
          "dtVencimento" : {
            "type" : "string",
            "format" : "date"
          },
          "dtCancelamento" : {
            "type" : "string",
            "format" : "date"
          },
          "razaoSocialEmpresa" : {
            "type" : "string"
          },
          "nuCnpjEmpresa" : {
            "type" : "string"
          },
          "enderecoEmpresa" : {
            "type" : "string"
          },
          "classeRisco" : {
            "type" : "string"
          },
          "nomeTecnico" : {
            "type" : "string"
          },
          "statusVigencia" : {
            "type" : "string"
          }
        }
      },
      "UsuarioTerceiroDTO" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "integer",
            "format" : "int64"
          },
          "usuario" : {
            "type" : "string"
          },
          "empresa" : {
            "type" : "string"
          },
          "email" : {
            "type" : "string"
          },
          "status" : {
            "type" : "string"
          },
          "multiProd" : {
            "type" : "string"
          },
          "criadoPor" : {
            "type" : "string"
          },
          "dataCriacao" : {
            "type" : "string",
            "format" : "date-time"
          },
          "atualizadoPor" : {
            "type" : "string"
          },
          "nuCnpjEmpresa" : {
            "type" : "string"
          },
          "dataAtualizacao" : {
            "type" : "string",
            "format" : "date-time"
          },
          "produtos" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ProdutoViewEntity"
            }
          }
        }
      },
      "UsuarioAlocadoDTO" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "integer",
            "format" : "int64"
          },
          "idUsuario" : {
            "type" : "string"
          },
          "perfil" : {
            "type" : "string",
            "enum" : [ "REPRESENTANTE", "USUARIO_TERCEIRO", "COLABORADOR" ]
          },
          "idRepresentante" : {
            "type" : "string"
          },
          "idUsuarioTerceiro" : {
            "type" : "string"
          },
          "nuCnpjEmpresa" : {
            "type" : "string"
          },
          "razaoSocialEmpresa" : {
            "type" : "string"
          }
        }
      },
      "TaskExecutionDTO" : {
        "type" : "object",
        "properties" : {
          "task" : {
            "type" : "string",
            "enum" : [ "EXCLUSAO_RASCUNHO", "MANUTENCAO_TERMOS_GMDN", "MANUTENCAO_HISTORICO_UDI", "DESCONTINUACAO_CADASTRO" ]
          },
          "result" : {
            "type" : "object"
          },
          "success" : {
            "type" : "boolean"
          },
          "startDate" : {
            "type" : "string",
            "format" : "date-time"
          },
          "endDate" : {
            "type" : "string",
            "format" : "date-time"
          }
        }
      },
      "AppTaskDTO" : {
        "required" : [ "task" ],
        "type" : "object",
        "properties" : {
          "task" : {
            "type" : "string",
            "enum" : [ "EXCLUSAO_RASCUNHO", "MANUTENCAO_TERMOS_GMDN", "MANUTENCAO_HISTORICO_UDI", "DESCONTINUACAO_CADASTRO" ]
          }
        },
        "description" : "Identificação da task a ser executada"
      },
      "SubmissaoDTO" : {
        "type" : "object",
        "properties" : {
          "codigo" : {
            "type" : "string"
          },
          "totalRegistros" : {
            "type" : "integer",
            "format" : "int64"
          },
          "totalCadastros" : {
            "type" : "integer",
            "format" : "int64"
          },
          "totalAlteracoes" : {
            "type" : "integer",
            "format" : "int64"
          },
          "totalFalhas" : {
            "type" : "integer",
            "format" : "int64"
          },
          "falhas" : {
            "type" : "string"
          },
          "dtSubmissao" : {
            "type" : "string",
            "format" : "date-time"
          }
        }
      },
      "ChaveSubmissaoDTO" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "integer",
            "format" : "int64"
          },
          "descricao" : {
            "type" : "string"
          },
          "token" : {
            "type" : "string"
          },
          "dtExpiracao" : {
            "type" : "string",
            "format" : "date-time"
          },
          "dtCriacao" : {
            "type" : "string",
            "format" : "date-time"
          },
          "dtInativacao" : {
            "type" : "string",
            "format" : "date-time"
          },
          "acessoExterno" : {
            "type" : "boolean"
          }
        }
      },
      "ProdutoRestricaoViewBuscaDTO" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "integer",
            "format" : "int64"
          },
          "codTecnico" : {
            "type" : "string"
          },
          "descProduto" : {
            "type" : "string"
          },
          "nomeTecnico" : {
            "type" : "string"
          },
          "tipoProduto" : {
            "type" : "string"
          },
          "classeRisco" : {
            "type" : "string"
          },
          "usuarioInternoExc" : {
            "type" : "string"
          },
          "usuarioInternoAd" : {
            "type" : "string"
          },
          "dtModificacao" : {
            "type" : "string",
            "format" : "date-time"
          }
        }
      },
      "EnderecoVO" : {
        "type" : "object",
        "properties" : {
          "cep" : {
            "type" : "string"
          },
          "logradouro" : {
            "type" : "string"
          },
          "complemento" : {
            "type" : "string"
          },
          "bairro" : {
            "type" : "string"
          },
          "localidade" : {
            "type" : "string"
          },
          "uf" : {
            "type" : "string"
          }
        }
      },
      "UsuarioInternoDTO" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "nome" : {
            "type" : "string"
          },
          "email" : {
            "type" : "string"
          },
          "perfis" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "admin" : {
            "type" : "boolean"
          }
        }
      },
      "PageableResponseModel" : {
        "type" : "object",
        "properties" : {
          "total" : {
            "type" : "integer",
            "format" : "int64"
          },
          "items" : {
            "type" : "array",
            "items" : {
              "type" : "object"
            }
          }
        }
      },
      "ProdutoViewBuscaDTO" : {
        "type" : "object",
        "properties" : {
          "cod" : {
            "type" : "integer",
            "format" : "int64"
          },
          "numeroRegistro" : {
            "type" : "string"
          },
          "nomeProduto" : {
            "type" : "string"
          },
          "razaoSocialEmpresa" : {
            "type" : "string"
          },
          "statusVigencia" : {
            "type" : "string"
          }
        }
      },
      "FabricanteProdutoDTO" : {
        "type" : "object",
        "properties" : {
          "tipo" : {
            "type" : "string"
          },
          "codApresentacao" : {
            "type" : "integer",
            "format" : "int64"
          },
          "codFabricante" : {
            "type" : "string"
          },
          "nome" : {
            "type" : "string"
          },
          "codPais" : {
            "type" : "integer",
            "format" : "int64"
          },
          "pais" : {
            "type" : "string"
          },
          "endereco" : {
            "type" : "string"
          }
        }
      },
      "RegistroProdutoDTO" : {
        "type" : "object",
        "properties" : {
          "regularizacao" : {
            "$ref" : "#/components/schemas/RegularizacaoProdutoDTO"
          },
          "fabricanteLegal" : {
            "$ref" : "#/components/schemas/FabricanteProdutoDTO"
          }
        }
      },
      "RegularizacaoProdutoDTO" : {
        "required" : [ "nomeProduto", "nuCnpjEmpresa", "numeroRegistro", "razaoSocialEmpresa" ],
        "type" : "object",
        "properties" : {
          "numeroRegistro" : {
            "maxLength" : 11,
            "minLength" : 0,
            "type" : "string"
          },
          "nomeProduto" : {
            "maxLength" : 230,
            "minLength" : 0,
            "type" : "string"
          },
          "dtVencimento" : {
            "type" : "string",
            "format" : "date"
          },
          "dtCancelamento" : {
            "type" : "string",
            "format" : "date"
          },
          "razaoSocialEmpresa" : {
            "maxLength" : 120,
            "minLength" : 0,
            "type" : "string"
          },
          "nuCnpjEmpresa" : {
            "maxLength" : 14,
            "minLength" : 0,
            "type" : "string"
          },
          "enderecoEmpresa" : {
            "maxLength" : 400,
            "minLength" : 0,
            "type" : "string"
          },
          "classeRisco" : {
            "maxLength" : 10,
            "minLength" : 0,
            "type" : "string"
          },
          "nomeTecnico" : {
            "maxLength" : 200,
            "minLength" : 0,
            "type" : "string"
          },
          "validade" : {
            "type" : "string"
          }
        }
      },
      "DIUtilizadoDTO" : {
        "type" : "object",
        "properties" : {
          "di" : {
            "type" : "string"
          },
          "numeroRegistro" : {
            "type" : "string"
          },
          "idCadastroExistente" : {
            "type" : "integer",
            "format" : "int64"
          },
          "cadastroParalelo" : {
            "$ref" : "#/components/schemas/DispositivoDTO"
          }
        }
      },
      "TransferenciaTitularidadeDTO" : {
        "type" : "object",
        "properties" : {
          "numeroRegistro" : {
            "type" : "string"
          },
          "dtPublicacao" : {
            "type" : "string",
            "format" : "date"
          },
          "dispositivosPrevios" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DispositivoDTO"
            }
          }
        }
      },
      "SubstituicaoDTO" : {
        "type" : "object",
        "properties" : {
          "dispositivo" : {
            "$ref" : "#/components/schemas/DispositivoDTO"
          },
          "regularizacao" : {
            "$ref" : "#/components/schemas/RegistroProdutoDTO"
          }
        }
      },
      "ProdutoFormularioDTO" : {
        "type" : "object",
        "properties" : {
          "registro" : {
            "$ref" : "#/components/schemas/RegistroProdutoDTO"
          },
          "transferencia" : {
            "$ref" : "#/components/schemas/TransferenciaTitularidadeDTO"
          }
        }
      },
      "ConsultaDispositivoDTO" : {
        "type" : "object",
        "properties" : {
          "dispositivo" : {
            "$ref" : "#/components/schemas/DispositivoDTO"
          },
          "sucessoes" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SucessaoDTO"
            }
          }
        }
      },
      "SucessaoDTO" : {
        "type" : "object",
        "properties" : {
          "idDispositivo" : {
            "type" : "integer",
            "format" : "int64"
          },
          "tipo" : {
            "type" : "string",
            "enum" : [ "SUBSTITUICAO", "TRANSFERENCIA", "DESCONTINUACAO" ]
          }
        }
      },
      "ConsultaUsuarioTerceiroDTO" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "integer",
            "format" : "int64"
          },
          "usuario" : {
            "type" : "string"
          },
          "empresa" : {
            "type" : "string"
          },
          "email" : {
            "type" : "string"
          },
          "status" : {
            "type" : "string"
          },
          "multiProd" : {
            "type" : "string"
          },
          "criadoPor" : {
            "type" : "string"
          },
          "ultimaAlteracao" : {
            "type" : "string",
            "format" : "date-time"
          },
          "atualizadoPor" : {
            "type" : "string"
          },
          "criacao" : {
            "type" : "string",
            "format" : "date-time"
          },
          "nuCnpjEmpresa" : {
            "type" : "string"
          },
          "numeroRegistro" : {
            "type" : "string"
          },
          "produtos" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ProdutoViewEntity"
            }
          }
        }
      },
      "KeyValueDTO" : {
        "type" : "object",
        "properties" : {
          "key" : {
            "type" : "object"
          },
          "value" : {
            "type" : "object"
          }
        }
      }
    },
    "securitySchemes" : {
      "Keycloak" : {
        "type" : "oauth2",
        "description" : "Keycloak OAuth2 - OpenID Connect",
        "flows" : {
          "implicit" : {
            "authorizationUrl" : "https://acesso.prd.apps.anvisa.gov.br/auth/realms/udi/protocol/openid-connect/auth?nonce=83dacdd0-ba8e-44c9-af3e-e14090fa2cc4",
            "tokenUrl" : "https://acesso.prd.apps.anvisa.gov.br/auth/realms/udi/protocol/openid-connect/token",
            "refreshUrl" : "https://acesso.prd.apps.anvisa.gov.br/auth/realms/udi/protocol/openid-connect/token",
            "scopes" : { }
          }
        }
      }
    }
  }
}