# Acesso APIs SSP-GO
Para acessar as APIs da SSP é necessário um `access token`.
## Processo
1. Estabelecer pelas vias internas (SEI) o convênio ontre orgão públicos.
2. A equipe de informática da SSP cadastrará esse novo cliente das APIs e fornecerá ao mesmo um `refresh token`. O `refresh token` deve ser severamente protegido contra vazamento.
3. O `refresh token` não serve para fazer requisições nas APIs. Ele serve apenas para a obtenção do `access token`, este sim deve ser usado para fazer requisições nas APIs.
4. O proceso de obteção do `access token` deve ser automtizado na aplicação cliente, pois o mesmo expira em 24 horas.
5. Com o `access token` em mãos, a aplicação pode fazer requisições adcionando seu valor no header http chamado `token`.
## Obtendo um `access token` a partir de um `refresh token`
request:
```shell
curl -XPOST https://ssows.ssp.go.gov.br/rotateToken/301d4a92e51bea43623fc09a4fd5d835 <-- Este é um `refresh token`
```
response:
```json
{
"token": "59618e6b2782a78a3ce15c57f8bfc4cb" <-- Este é um `access token` que expira em 24h
}
```
> O cliente usará o `access token` atual até receber das APIs um status http `403` ou `401`. Assim que receber um desses status, a aplicação deve chamar novamente o método acima para receber um novo `access token`. Após isso, a aplicação deve continuar suas chamadas normalmente até que o `access token` expire novamente nas próximas 24 horas e seja necessário repetir o processo.
## Clientes antigos da APIs (quando não existia o `refresh token`)
Todos os clientes antigos da APIs que ainda usam o `acess token` **fixo** deverão migrar para o novo formato até dia **01/08/2021**. O cliente que não tiver realizado a migração até esta data perderá o acesso as APIs.