Achados e revisão
Os endpoints usam /scans, o nome existente do recurso. Use X-HASHIRO-TOKEN com https://api.hashiro.ai/api/.
Acesso
Leitura depende da associação ou acesso geral aos projetos. Criação, alteração e exclusão exigem permissão de pentester ou gestão e projeto permitido do provedor ou do próprio cliente. Clientes revisam candidatos públicos elegíveis, sem acesso a rascunhos privados do provedor ou achados de outras organizações.
Rotas
| Método | Caminho | Operação |
|---|---|---|
| GET | /scans/ | Listar achados com project, page e pageSize |
| GET | /scans/:scanId | Consultar achado |
| PUT | /scans/:projectName | Criar achado |
| POST | /scans/:projectName | Atualizar achado com ID no corpo |
| DELETE | /scans/:projectName/:scanId | Excluir achado |
| POST | /scans/:projectName/bulk-status | Alterar status em lote |
| POST | /scans/:projectName/bulk-delete | Excluir em lote |
| POST | /scans/:projectName/:scanId/review | Revisar candidato com versão esperada |
| POST | /scans/:projectName/:scanId/ai/demonstration | Gerar rascunho de documentação |
| POST | /scans/:projectName/:scanId/ai/demonstration/apply | Aplicar rascunho revisado |
| POST | /scans/:projectName/:scanId/ai/merge | Propor mesclagem para revisão |
Criar um achado
Envie a PUT /scans/my-project:
{
"title":"Missing security header",
"asset":["app.example.com"],
"severity":"low",
"description":"Observed during the assessment",
"remediation":"Configure the required header"
}asset é um array, mesmo para um host. Campos opcionais incluem observação, demonstração, remediação, referências, requisições, CVSS e tags. Referências precisam ser URLs HTTP ou HTTPS. cwe e owasp também são URLs quando informados.
A criação retorna success e Ids; preserve os identificadores. Novos achados de clientes recebem status conforme a política do servidor, que pode não aceitar rascunhos para essa conta.
Atualizar
POST /scans/my-project exige id, title e asset não vazio. Consulte o registro, preserve esses campos e envie as alterações permitidas. Decisões de status de candidatos pendentes usam a rota de revisão.
Status em lote
{
"ids":["FINDING_ID"],
"status":"pending_retest"
}Envie a POST /scans/my-project/bulk-status. O limite é 500 IDs. bulk-delete recebe ids sem status e remove permanentemente os registros autorizados.
Revisar candidatos
Use a versão retornada pelo candidato e envie a decisão com expected_review_version. Um conflito exige consultar o registro atualizado. Revisão e mesclagem dependem da função, projeto e visibilidade. Geração assistida pode consumir créditos; revise antes de aplicar.
Consulte Ciclo de vida e Revisão com IA para o fluxo na interface.