API cVortex
Sobre a API
Esta API REST dispõe de serviços para recuperação de dados atuais, históricos, detalhes e status de SLA sobre a tratativa de um caso com o objetivo de construção de relatórios e dashboards, bem como em uso para rotinas diversas conforme negócio do cliente.
A estrutura dos dados segue um modelo baseado nas seguintes entidades chave:
Dados padrão do caso: Dados do caso com todos os atributos nativos da plataforma
Dados personalizados do caso: Lista de dados do caso com os atributos personalizados conforme o negócio
Histórico de eventos do caso: Lista de histórico de qualquer evento realizado sobre o caso
Informações de SLA: Status do monitoramento de SLA sobre um caso
Atenção:
As credenciais de acesso devem ser solicitadas para o suporte ao cliente cVortex
As credenciais não devem ser utilizadas para acesso ao ambiente do usuário, mas apenas para a API
Visão geral das operações suportadas
Criação, consulta e atualização de dados de casos
Execução de ações de fluxo de atendimento do caso
Consulta de resposta a questionários
Consulta de interações de e-mail
Ações de administração de usuários
Endpoints
Padronização de valores
Os valores de data estão no padrão GMT-0
Filtros de data são intervalos (início e fim)
Todas as datas devem ser enviadas em Current Milli
Todas as datas retornadas pela API são em Current Milli
Autenticação
A autenticação para utilização da API de recuperação de dados do caso será realizada através da estrutura de token de acesso (Access Token). Para isso será necessário obter o seu access token através da iam-auth-api
:
POST https://api.cvortex.com/v1/auth/
Informe os seguintes parâmetros de requisição:
{
"password": "string",
"username": "{subdominio_tenant}\\{username}"
}
Observação:
O campo username
deve conter o prefixo com o número único do cliente seguido de uma barra invertida (\
) e o nome de usuário.
Exemplo: 12345\\joao.silva
Autorização
Após obter o token de acesso
Após obter o token de acesso, toda requisição à endpoints das APIs cVortex devem informar este token no cabeçalho Authorization
, para respectiva autenticação e autorização.
Authorization: Bearer <token>
Content-Type
O content-type
tanto de requisições quanto de respostas será: “application/json”
Buscar uma pessoa
Permite buscar uma pessoa pelo seu nome e documento.
Request
GET https://api.cvortex.com/v1/person
Header
Authorization
Parâmetros de URI
Parâmetro | Descrição | Obrigatório |
---|---|---|
| Documento completo da pessoa | 🚫Não |
| Nome completo da pessoa (exato) | 🚫Não |
| Parte do nome da pessoa (busca parcial) | 🚫Não |
| E-mail da pessoa | 🚫Não |
| Cargo da pessoa | 🚫Não |
Response
[
{
"document": "string",
"easyId": "string",
"email": "string",
"jobTitle": "string",
"fullName": "string",
"id": "string"
}
]
Contar pessoas
Permite contar a quantidade de pessoas conforme os filtros informados.
Request
GET https://api.cvortex.com/v1/person/co
Header
Authorization
Parâmetros de URI
Parâmetro | Descrição | Obrigatório |
---|---|---|
| Documento completo da pessoa | 🚫Não |
| Nome completo da pessoa (exato) | 🚫Não |
| Parte do nome da pessoa (busca parcial) | 🚫Não |
| E-mail da pessoa | 🚫Não |
| Cargo da pessoa | 🚫Não |
Response
number
Buscar caso por ID
Permite buscar um caso pelo seu ID único.
Request
GET https://api.cvortex.com/v1/case/{id}
Header
Authorization
Parâmetros de URI
Parâmetro | Descrição | Obrigatório |
---|---|---|
| ID único do caso | ✅ Sim |
Response
{
"id":{
"type":"string"
},
"deleted":{
"type":"boolean"
},
"createdAt":{
"type":"integer",
"format":"int64"
},
"updatedAt":{
"type":"integer",
"format":"int64"
},
"active":{
"type":"boolean"
},
"createdBy":{
"type":"string"
},
"updatedBy":{
"type":"string"
},
"version":{
"type":"string"
},
"subject":{
"type":"string"
},
"caseType":{
"type":"string"
},
"caseTypeName":{
"type":"string"
},
"caseStatus":{
"type":"string"
},
"caseStatusName":{
"type":"string"
},
"businessUnit":{
"type":"string"
},
"businessUnitName":{
"type":"string"
},
"priority":{
"type":"string"
},
"description":{
"type":"string"
},
"externalId":{
"type":"string"
},
"companyRequesterId":{
"type":"string"
},
"companyRequesterName":{
"type":"string"
},
"personRequesterId":{
"type":"string"
},
"personRequesterName":{
"type":"string"
},
"currentAssignee":{
"type":"string"
},
"currentAssigneeName":{
"type":"string"
},
"caseOrigin":{
"type":"string"
},
"caseOriginName":{
"type":"string"
},
"scheduleTo":{
"type":"integer",
"format":"int64"
},
"scheduleToPerson":{
"type":"string"
},
"scheduleToPersonName":{
"type":"string"
},
"originallyCreatedOn":{
"type":"integer",
"format":"int64"
},
"closed":{
"type":"boolean"
},
"closedAt":{
"type":"integer",
"format":"int64"
},
"closedBy":{
"type":"string"
},
"closedNameBy":{
"type":"string"
},
"reopenedAt":{
"type":"integer",
"format":"int64"
},
"reopenedBy":{
"type":"string"
},
"reopenedNameBy":{
"type":"string"
},
"lastAction":{
"type":"string"
},
"lastActionName":{
"type":"boolean"
},
"openingReason":{
"type":"string"
},
"openingReasonName":{
"type":"string"
},
"closingReason":{
"type":"string"
},
"closingReasonName":{
"type":"string"
},
"caseId":{
"type":"string"
},
"queueId":{
"type":"string"
},
"queueName":{
"type":"string"
},
"inProgress":{
"type":"boolean"
},
"startedProgressAt":{
"type":"integer",
"format":"int64"
},
"caseBatchId":{
"type":"string"
},
"caseBatchName":{
"type":"string"
},
"comment":{
"type":"string"
},
"expired":{
"type":"boolean"
},
"expiredAt":{
"type":"integer",
"format":"int64"
},
"expiration":{
"type":"integer",
"format":"int64"
},
"currentContactId":{
"type":"string"
},
"currentChannel":{
"type":"string"
},
"currentContact":{
"type":"string"
},
"currentServiceId":{
"type":"string"
},
"queueStatus":{
"type":"string"
},
"queueStatusChangedAt":{
"type":"integer",
"format":"int64"
},
"createdFromChannel":{
"type":"string"
},
"caseFormId":{
"type":"string"
},
"caseFormName":{
"type":"string"
},
"caseDetails":[
{
"entityUuid":{
"type":"string"
},
"values":[
{
"label":{
"type":"string"
},
"name":{
"type":"string"
},
"fieldUuid":{
"type":"string"
},
"value":{
"type":"string"
}
}
]
}
],
"caseHistories":[
{
"createdAt":{
"type":"integer"
"format":"int64"
},
"changeDescription":{
"type":"string"
},
"username":{
"type":"string"
},
"comment":{
"type":"string"
},
"caseActionName":{
"type":"string"
},
"change":{
"type":"string"
},
"questionnaireAnswerId":{
"type":"string"
},
"questionnaireId":{
"type":"string"
},
"questionnaireName":{
"type":"string"
}
}
],
"slasMonitors":[
{
"caseId":{
"type":"string"
},
"timeLeft":{
"type":"integer",
"format":"int64"
},
"timeLeftFlag":{
"type":"string"
},
"serviceLevelAgreement":{
"type":"string"
}
}
]
}
Buscar caso por case ID
Permite buscar um caso pelo seu ID de negócio (caseId)
Request
GET https://api.cvortex.com/v1/case/business/{id}
Header
Authorization
Parâmetros de URI
Parâmetro | Descrição | Obrigatório |
---|---|---|
| ID de negócio do caso | ✅ Sim |
Response
{
"id":{
"type":"string"
},
"deleted":{
"type":"boolean"
},
"createdAt":{
"type":"integer",
"format":"int64"
},
"updatedAt":{
"type":"integer",
"format":"int64"
},
"active":{
"type":"boolean"
},
"createdBy":{
"type":"string"
},
"updatedBy":{
"type":"string"
},
"version":{
"type":"string"
},
"subject":{
"type":"string"
},
"caseType":{
"type":"string"
},
"caseTypeName":{
"type":"string"
},
"caseStatus":{
"type":"string"
},
"caseStatusName":{
"type":"string"
},
"businessUnit":{
"type":"string"
},
"businessUnitName":{
"type":"string"
},
"priority":{
"type":"string"
},
"description":{
"type":"string"
},
"externalId":{
"type":"string"
},
"companyRequesterId":{
"type":"string"
},
"companyRequesterName":{
"type":"string"
},
"personRequesterId":{
"type":"string"
},
"personRequesterName":{
"type":"string"
},
"currentAssignee":{
"type":"string"
},
"currentAssigneeName":{
"type":"string"
},
"caseOrigin":{
"type":"string"
},
"caseOriginName":{
"type":"string"
},
"scheduleTo":{
"type":"integer",
"format":"int64"
},
"scheduleToPerson":{
"type":"string"
},
"scheduleToPersonName":{
"type":"string"
},
"originallyCreatedOn":{
"type":"integer",
"format":"int64"
},
"closed":{
"type":"boolean"
},
"closedAt":{
"type":"integer",
"format":"int64"
},
"closedBy":{
"type":"string"
},
"closedNameBy":{
"type":"string"
},
"reopenedAt":{
"type":"integer",
"format":"int64"
},
"reopenedBy":{
"type":"string"
},
"reopenedNameBy":{
"type":"string"
},
"lastAction":{
"type":"string"
},
"lastActionName":{
"type":"boolean"
},
"openingReason":{
"type":"string"
},
"openingReasonName":{
"type":"string"
},
"closingReason":{
"type":"string"
},
"closingReasonName":{
"type":"string"
},
"caseId":{
"type":"string"
},
"queueId":{
"type":"string"
},
"queueName":{
"type":"string"
},
"inProgress":{
"type":"boolean"
},
"startedProgressAt":{
"type":"integer",
"format":"int64"
},
"caseBatchId":{
"type":"string"
},
"caseBatchName":{
"type":"string"
},
"comment":{
"type":"string"
},
"expired":{
"type":"boolean"
},
"expiredAt":{
"type":"integer",
"format":"int64"
},
"expiration":{
"type":"integer",
"format":"int64"
},
"currentContactId":{
"type":"string"
},
"currentChannel":{
"type":"string"
},
"currentContact":{
"type":"string"
},
"currentServiceId":{
"type":"string"
},
"queueStatus":{
"type":"string"
},
"queueStatusChangedAt":{
"type":"integer",
"format":"int64"
},
"createdFromChannel":{
"type":"string"
},
"caseFormId":{
"type":"string"
},
"caseFormName":{
"type":"string"
},
"caseDetails":[
{
"entityUuid":{
"type":"string"
},
"values":[
{
"label":{
"type":"string"
},
"name":{
"type":"string"
},
"fieldUuid":{
"type":"string"
},
"value":{
"type":"string"
}
}
]
}
],
"caseHistories":[
{
"createdAt":{
"type":"integer"
"format":"int64"
},
"changeDescription":{
"type":"string"
},
"username":{
"type":"string"
},
"comment":{
"type":"string"
},
"caseActionName":{
"type":"string"
},
"change":{
"type":"string"
},
"questionnaireAnswerId":{
"type":"string"
},
"questionnaireId":{
"type":"string"
},
"questionnaireName":{
"type":"string"
}
}
],
"slasMonitors":[
{
"caseId":{
"type":"string"
},
"timeLeft":{
"type":"integer",
"format":"int64"
},
"timeLeftFlag":{
"type":"string"
},
"serviceLevelAgreement":{
"type":"string"
}
}
]
}
Buscar casos
Permite buscar casos através dos parâmetros usados como filtro.
Request
GET https://api.cvortex.com/v1/cases/search
Header
Authorization
Parâmetros de URI
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
|
| Unidade de negócio | ✅ Sim |
|
| Identificador externo | 🚫 Não |
|
| Nome do status do caso | 🚫 Não |
|
| Nome do tipo do caso | 🚫 Não |
|
| Nome da lista de caso | 🚫 Não |
|
| Contato da pessoa solicitante do caso | 🚫 Não |
|
| Nome da pessoa solicitante do caso | 🚫 Não |
|
| Identificador da pessoa solicitante do caso | 🚫 Não |
|
| Nome do agente atribuído ao caso | 🚫 Não |
|
| Período de intervalo de tempo para busca dos casos. Os possíveis valores são: TODAY, YESTERDAY, SEVEN_DAYS, FIFTEEN_DAYS, THIRTY_DAYS e BETWEEN. | ✅ Sim |
|
| Data de início da criação dos casos, usada no filtro de período. É obrigatório somente quando o campo period é igual a BETWEEN. Possíveis formatos:
| 🚫 Não |
|
| Data final da criação dos casos, usada no filtro de período. É obrigatório somente quando o campo period é igual a BETWEEN. Possíveis formatos:
| 🚫 Não |
|
| Quantidade de registro por página. O valor máximo permitido é 25. | 🚫 Não |
|
| Número de registros saltados no resultado da página | 🚫 Não |
Response
[
{
"personRequesterEasyId":{
"type":"text"
},
"personRequesterName":{
"type":"text"
},
"caseId":{
"type":"number",
"format":"int64"
},
"externalId":{
"type":"string"
},
"createdDate":{
"type":"string"
},
"closedDate":{
"type":"string"
},
"caseTypeName":{
"type":"string"
},
"caseStatusName":{
"type":"string"
},
"queueName":{
"type":"string"
},
"currentAssigneeName":{
"type":"string"
}
}
]
Exemplo
https://api.cvortex.com/v1/cases/search?businessUnitId=ced312a4-f320-4555-ab43-81a9ad77f80c&caseStatusNames=Aguardando%20Atendimento&caseStatusNames=Inicio&createdDateEnd=11%2F09%2F2023%2023%3A59&createdDateStart=01%2F01%2F2023%2000%3A00&period=BETWEEN
[
{
"personRequesterEasyId": "10823",
"personRequesterName": "Maria da Silva Souza",
"caseId": 21704,
“id”: 1239-123124-2324-3434
"createdDate": "01/09/2023 11:27",
"closedDate": "03/09/2023 13:45",
"caseTypeName": "Reserva",
"caseStatusName": "Aguardando Atendimento",
"queueName": "Fila Atendimento 01",
"currentAssigneeName": "Agente 01"
}
]
Contar casos
Permite contar casos através dos parâmetros usados como filtros.
Request
GET https://api.cvortex.com/v1/cases/count
Header
Authorization
Parâmetros de URI
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
|
| Unidade de negócio | ✅ Sim |
|
| Nome do status do caso | 🚫 Não |
|
| Nome do tipo do caso | 🚫 Não |
|
| Nome da lista de caso | 🚫 Não |
|
| Contato da pessoa solicitante do caso | 🚫 Não |
|
| Nome da pessoa solicitante do caso | 🚫 Não |
|
| Identificador da pessoa solicitante do caso | 🚫 Não |
|
| Nome do agente atribuído ao caso | 🚫 Não |
|
| Período de intervalo de tempo para busca dos casos. Os possíveis valores são: TODAY, YESTERDAY, SEVEN_DAYS, FIFTEEN_DAYS, THIRTY_DAYS e BETWEEN. | ✅ Sim |
|
| Data de início da criação dos casos, usada no filtro de período. É obrigatório somente quando o campo period é igual a BETWEEN. Possíveis formatos:
| 🚫 Não |
|
| Data final da criação dos casos, usada no filtro de período. É obrigatório somente quando o campo period é igual a BETWEEN. Possíveis formatos:
| 🚫 Não |
Response
number
Exemplo
https://api.cvortex.com/v1/cases/search?businessUnitId=ced312a4-f320-4555-ab43-81a9ad77f80c&caseStatusNames=Aguardando%20Atendimento&caseStatusNames=Inicio&createdDateEnd=11%2F09%2F2023%2023%3A59&createdDateStart=01%2F01%2F2023%2000%3A00&period=BETWEEN
40324
Buscar formulário de caso por ID
Permite buscar o formulário de criação de caso pelo seu ID único.
Request
GET https://api.cvortex.com/v1/case-forms/{id}
Header
Authorization
Parâmetros de URI
Parâmetro | Descrição | Obrigatório |
---|---|---|
| ID do formulário caso | ✅ Sim |
Response
{
"name":{
"type":"string"
},
"description":{
"type":"string"
},
"businessUnitId":{
"type":"string"
},
"assignCaseToAgent":{
"type":"boolean"
},
"createIDPrefixForManualCase":{
"type":"boolean"
},
"identifierPrefix":{
"type":"string"
},
"fields":[
{
"caseFormId":{
"type":"string"
},
"entityUUID":{
"type":"string"
},
"fieldUUID":{
"type":"string"
},
"label":{
"type":"string"
},
"removed":{
"type":"boolean"
},
"required":{
"type":"boolean"
},
"order":{
"type":"integer",
"format":"int64"
},
"fieldType":{
"type":"string"
},
"defaultValue":{
"type":"string"
},
"blocked":{
"type":"boolean"
},
"hidden":{
"type":"boolean"
}
}
]
}
Criar caso por formulário
Permite criar um caso a partir do formulário.
Request
POST https://api.cvortex.com/v1/case/forms/{id}
Header
Authorization
Parâmetros de URI
Parâmetro | Descrição | Obrigatório |
---|---|---|
| ID do formulário caso | ✅ Sim |
Observações.:
Os campos
personRequesterFullName
,personRequesterEmail
epersonRequesterDocument
da request devem ser enviados quando o campopersonRequesterId
não estiver presente na lista dedynmicFields
, ou seja, se você ainda não tem o cliente identificado no momento de criação do caso utilize o campopersonRequesterFullName
e uma nova pessoa será criada junto ao caso, agora se você já conhece o cliente no momento de criação do caso utilize o_id
da própria pessoa dentro do campopersonRequesterId
.O campo
priority
que deve ser enviado na lista dedynamicFields
, caso não tenha um valor padrão configurado no cadastro de formulário de casos, tem três valores possíveis: LOW, MEDIUM e HIGH.Para a correta criação do caso, os campos configurados no formulário não podem ser marcados com o parâmetro ‘Ocultar campo no formulário’.
Body
{
"personRequesterFullName":{
"type":"string"
},
"personRequesterEmail":{
"type":"string"
},
"personRequesterDocument":{
"type":"string"
},
"dynamicFields":[
{
"entityUUID":{
"type":"string"
},
"fieldUUID":{
"type":"string"
},
"value":{
"type":"string"
}
}
]
}
Response
{
"id":{
"type":"string"
},
"caseId":{
"type":"string"
}
}
Exemplo de utilização criando uma nova pessoa a cada requisição
{
"personRequesterFullName":"nome do cliente",
"personRequesterDocument":"documento do cliente",
"personRequesterEmail":"email do cliente",
"dynamicFields":[
{
"entityUUID":"case",
"fieldUUID":"subject",
"value":"comentário desejado"
},
{
"entityUUID":"case",
"fieldUUID":"caseType",
"value":"_id do registro CaseType"
},
{
"entityUUID":"case",
"fieldUUID":"caseStatus",
"value":"_id do registro CaseStatus"
},
{
"entityUUID":"case",
"fieldUUID":"priority",
"value":"LOW ou MEDIUM ou HIGH"
},
{
"entityUUID":"_id de Case Detail",
"fieldUUID":"_id do Atributo de Case Detail",
"value":"Valor desejado para o campo"
}
]
}
Exemplo de utilização com uma pessoa já existente
{
"dynamicFields":[
{
"entityUUID":"case",
"fieldUUID":"subject",
"value":"comentário desejado"
},
{
"entityUUID":"case",
"fieldUUID":"caseType",
"value":"_id do registro CaseType"
},
{
"entityUUID":"case",
"fieldUUID":"caseStatus",
"value":"_id do registro CaseStatus"
},
{
"entityUUID":"case",
"fieldUUID":"priority",
"value":"LOW ou MEDIUM ou HIGH"
},
{
"entityUUID":"case",
"fieldUUID":"personRequesterId",
"value":"_id do registro Person"
},
{
"entityUUID":"_id de Case Detail",
"fieldUUID":"_id do Atributo de Case Detail",
"value":"Valor desejado para o campo"
}
]
}
Buscar Ações por status e tipo do caso
Permite buscar ações, utilizando o status e tipo do caso como parâmetros de busca.
Request
GET https://api.cvortex.com/v1/workflow-executions/actions/{statusId}/{caseTypeId}
Header
Authorization
Parâmetros de URI
Parâmetro | Descrição | Obrigatório |
---|---|---|
| ID da | ✅ Sim |
| ID do tipo do caso, correspondente a propriedade no flow | ✅ Sim |
Response
[
{
"workflowId": “string”
"actions": ["string"]
}
]
Executar uma ação de um fluxo de atendimento
Permite executar uma ação de um fluxo de atendimento a partir de um caso e é necessário informar os parâmetros: Id da ação, Id do caso, Id do tipo do caso, Id da função status e lista de requisições do formulário.
Request
POST https://api.cvortex.com/v1/workflow-executions
Header
Authorization
Observação:
Com “F12” no navegador pela tela de cadastro do formulário de ação, é possível copiar os valores que precisam ser enviados dentro do “formRequestList”.
Body
{
"actionId": “ID Hash da ação a ser executada”,
"caseId": “ID Hash do caso”,
"caseTypeId": “ID Hash do tipo de caso do caso em questão”,
"statusFunctionId": “ID Hash do status de caso no fluxo”,
"formRequestList":[
{
"binding": “string”,
"value": “string”
}
]
}
Response
{
"workflowExecutionsRequest": “ID Hash da requisição WF criada”
}
Observação:
A ação deve estar vinculada ao status do caso dentro do fluxo de atendimento no workflow studio
A ação somente será executada se o caso estiver no status informado
Buscar respostas de questionários por Caso e Ação
Recupera a lista de respostas de questionários de um determinado caso e ação.
Request
GET https://api.cvortex.com/v1/questionnaire/questionnaire-answer
Header
Authorization
Parâmetros de URI
Parâmetro | Descrição | Obrigatório |
---|---|---|
| ID correspondente ao caso | 🚫 Não |
| ID correspondente a ação do caso | 🚫 Não |
Response
[
{
"id":"a9378ad3-8730-4800-852f-e96691508103",
"name":"Teste Cosmos",
"createdAt":1706301660041,
"questions":[
{
"id":"40a7e004-f9ea-4f90-8445-d0f89987dd15",
"label":"Questão 1",
"type":"DATE",
"required":false,
"answer":"1706301600000",
"options":[
],
"answered":true
},
{
"id":"b1f953cf-752b-4d5f-9d5d-8787bfb3c3c1",
"label":"Questão 1",
"type":"TEXT",
"required":false,
"answer":"abc",
"options":[
],
"answered":true
}
]
}
]
Anexar arquivos ao Caso
Possibilita anexar arquivos ao caso, enviando no formato multipart file.
Request
POST https://api.cvortex.com/v1/case/{caseId}/attachment
Header
Authorization
Parâmetros de URI
Parâmetro | Descrição | Obrigatório |
---|---|---|
| ID correspondente ao caso | 🚫 Não |
Lista de erros possíveis:
Erro | Descrição |
---|---|
|
|
|
|
|
|
|
|
|
|
Lista de arquivos suportados:
Tipo do Arquivo | content-type |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Body
Requisição do tipo: form-data
Content-Type: multipart/form-data;
Parâmetro: files[] do tipo arquivo
Response
{
"files": [
{
"id": "SUCCESS",
"name": "test.txt",
"status": "SUCCESS",
"createdAt": "1707250657492",
"createdBy": "f9dcd879-79b2-4a25-8f91-a72ec0951a50"
},
{
"name": "main.py",
"status": "ERROR",
"message": "Tipo de arquivo não suportado"
}
]
}
Buscar Usuários
Permite buscar usuários através dos parâmetros usados como filtro.
Request
GET https://api.cvortex.com/v1/users/search
Header
Authorization
Parâmetros de URI
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
|
| Usuário ativo | 🚫 Não |
|
| Quantidade de registro por página. O valor máximo permitido é 100. | 🚫 Não |
|
| Número de registros saltados no resultado da página | 🚫 Não |
|
| Campo usado para ordenação, no seguinte formato | 🚫 Não |
Response
CODE | Descrição |
---|---|
| Operação realizada com sucesso |
[
{
"id":{
"type":"string"
},
"deleted":{
"type":"boolean"
},
"createdAt":{
"type":"integer",
"format":"int64"
},
"updatedAt":{
"type":"integer",
"format":"int64"
},
"active":{
"type":"boolean"
},
"createdBy":{
"type":"string"
},
"updatedBy":{
"type":"string"
},
"version":{
"type":"string"
},
"personId":{
"type":"string"
},
"email":{
"type":"string"
},
"username":{
"type":"string"
}
}
]
Exemplo
https://api.cvortex.com/v1/users/search?active=true&limit=5&sort-fields=username:ASC
[
{
"id": "8f00f389-e988-4f35-8f73-93c500701589",
"deleted": false,
"createdAt": 1654719964555,
"active": true,
"createdBy": "default-user",
"version": "0",
"personId": "7fba8f3b-6de4-4772-a374-0bc79bdc62bd",
"email": "cvortex@cvortex.io",
"username": "cvortex.cvortex"
}
]
Contar usuários
Permite contar usuários através dos parâmetros usados como filtros.
Request
GET https://api.cvortex.com/v1/users/count
Header
Authorization
Parâmetros de URI
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
|
| Identificador do usuário a ser ativado | ✅ Sim |
Response
CODE | Descrição |
---|---|
| Operação realizada com sucesso |
number
Exemplo
https://api.cvortex.com/v1/users/count?active=true
50
Ativar usuários
Permite ativar um usuário.
Request
POST https://api.cvortex.com/v1/users/{id}/activate
Header
Authorization
Parâmetros de URI
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
|
| Identificador do usuário a ser ativado | 🚫 Não |
Response
CODE | Descrição |
---|---|
| Operação realizada com sucesso |
Exemplo
https://api.cvortex.com/v1/users/3639722f-5dd7-4435-9fd6-ccf71ce2f900/activate
Inativar usuários
Permite inativar um usuário.
Request
POST https://api.cvortex.com/v1/users/{id}/inactivate
Header
Authorization
Parâmetros de URI
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
|
| Identificador do usuário a ser inativado | 🚫 Não |
Response
CODE | Descrição |
---|---|
| Operação realizada com sucesso |
Exemplo
https://api.cvortex.com/v1/users/3639722f-5dd7-4435-9fd6-ccf71ce2f900/inactivate
Buscar conteúdo de e-mail
Permite obter o conteúdo de um e-mail a partir de um ID de histórico de interações.
Request
GET https://api.cvortex.com/v1/message-history/email/{id}/content
Header
Authorization
Parâmetros de URI
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
|
| Remover ou não tags HTML do conteúdo | 🚫 Não |
|
| ID do histórico de interações | ✅ Sim |
Response
CODE | Descrição |
---|---|
| Operação realizada com sucesso |
Exemplo
https://api.cvortex.com/v1/message-history/email/3639722f-5dd7-4435-9fd6-ccf71ce2f900/content?exclude-tags=true
{
"content": "Conteúdo do email"
}
Buscar histórico de interações de um caso
Permite obter os histórico de interações de um caso.
Request
GET https://api.cvortex.com/v1/message-history/{hash_case}/filter
Header
Authorization
Parâmetros de URI
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
|
| Filtro de canal. Pode ser um dos seguintes valores: EMAIL, SMS, TELEGRAM, WHATSAPP, WEBCHAT, INSTAGRAM, MESSENGER | ✅ Sim |
|
| Número de registros saltados no resultado da página | 🚫 Não |
|
| ID do Caso | ✅ Sim |
Response
CODE | Descrição |
---|---|
| Operação realizada com sucesso |
Exemplo
https://api.cvortex.com/v1/message-history/3639722f-5dd7-4435-9fd6-ccf71ce2f900/filter?channel=WHATSAPP
{
"content":[
{
"messageHistoryId":"123",
"messageType":"TEXT",
"assetId":"123",
"assetAssignee":"123",
"channel":"WHATSAPP",
"hsmTemplateId":"123",
"message":"Hello World!",
"status":"READ",
"digitalId":"3412345678",
"way":"SENT",
"conversationId":"123",
"channelAccountKey":"123",
"error":null,
"errorTitle":null,
"errorCode":null,
"repliedHistoryId":null,
"createdAt":1658928025873,
"messageReceivedDate":1658928025873
}
],
"totalElements":1,
"totalPages":1
}
Buscar anexo de histórico de interações
Permite obter o anexo de um histórico de interações. O endpoint retorna uma lista de URL’s para o download dos arquivos de anexo referentes ao histórico buscado.
Request
GET https://api.cvortex.com/v1/message-history/attachment/{messageHistoryId}
Header
Authorization
Parâmetros de URI
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
|
| ID histórico de interações | ✅ Sim |
Response
CODE | Descrição |
---|---|
| Operação realizada com sucesso |
Exemplo
https://api.cvortex.com/v1/message-history/attachment/3639722f-5dd7-4435-9fd6-ccf71ce2f900
[
{
"url": "https://storage.googleapis.com/12345/abcdefc"
}
]
Alterar unidade de negócio de um caso
Permite alterar a unidade de negócio (“business unit”) de um caso.
Request
GET https://api.cvortex.com/v1/case/update-business-unit
Header
Authorization
Parâmetros de URI
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
|
| ID do caso | ✅ Sim |
|
| Tipo de caso da nova unidade de negócio | ✅ Sim |
|
| Status de caso da nova unidade de negócio | ✅ Sim |
|
| Nova unidade de negócio | ✅ Sim |
|
| Origem de caso da nova unidade de negócio | 🚫 Não |
|
| Razão de caso (Abertura) da nova unidade de negócio | 🚫 Não |
|
| Razão de caso (Fechamento) da nova unidade de negócio | 🚫 Não |
Response
CODE | Descrição |
---|---|
| Operação realizada com sucesso |
Exemplo de request
https://api.cvortex.com/v1/cases/update-business-unit
{
"caseId": "123",
"caseType": "123",
"caseStatus": "123",
"businessUnit": "123",
"caseOrigin": "123",
"closingReason": "123",
"openingReason": "123"
}
Exemplo de resposta
https://api.cvortex.com/v1/cases/update-business-unit
{
"id": "123123",
"deleted": false,
"createdAt": 1658928025873,
"updatedAt": 1658928025873,
"active": true,
"createdBy": "default-user",
"updatedBy": "default-user",
"version": "5",
"tenantId": "123"
}
Encontrar Pessoa por Nome, Documento, Contatos
Permite buscar uma pessoa por nome, documento, e contatos.
Request
GET https://api.cvortex.com/v1/person/value?limit=[LIMIT]&value=[VALOR]
Header
Authorization
Parâmetros de query
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
|
| Limite de resultados | 🚫 Não |
|
| Valor para busca (nome, email, etc) | ✅ Sim |
Response
CODE | Descrição |
---|---|
| Operação realizada com sucesso |
Exemplo de request
https://api.cvortex.com/v1/person/value?limit=1&value=vitor
Exemplo de resposta
https://api.cvortex.com/v1/person/value?limit=1&value=vitor
[
{
"id": "3e3e58bf-67bb-4de4-8ab7-42644642971e",
"fullName": "vitor-dois",
"easyId": "91",
"active": true,
"createdAt": 1680224990213,
"updatedAt": 1696013284498,
"createdBy": "default-user",
"updatedBy": "d447a00a-53ad-4714-88b3-d81b6632fd19",
"deleted": false,
"contacts": [
{
"id": "fff3580e-0ba0-431c-b944-60f90726ebb4",
"contactType": "MOBILE_PHONE",
"value": "34991131072",
"channelType": "VOICE",
"createdAt": 1680224990398,
"active": true,
"deleted": false
}
]
}
]
Atualizar Status do Caso
Permite atualizar o status de um caso.
Request
PUT https://api.cvortex.com/v1/case/change-status
Header
Authorization
Parâmetros de body
Nome | Tipo | Descrição | Obrigatório |
---|---|---|---|
|
| Novo status do caso | ✅ Sim |
|
| Filtro para selecionar casos (detalhes abaixo) | 🚫 Não |
|
| Campos para ordenação dos resultados (usado com filtro, limite de 1000) | 🚫 Não |
Response
CODE | Descrição |
---|---|
| Operação realizada com sucesso |
Exemplo de request
https://api.cvortex.com/v1/case/change-status\
{
"caseStatus": "string",
"filter": {
"dynamicEntityUUID": "string",
"dynamicFilter": {
"entries": [
{
"entityUUID": "string",
"fieldUUID": "string",
"operator": "EQUAL",
"values": [
"string"
]
}
]
},
"dynamicRelationFieldUUID": "string",
"nativeFilter": {
"entries": [
{
"entityUUID": "string",
"fieldUUID": "string",
"operator": "EQUAL",
"values": [
"string"
]
}
]
}
},
"ids": [
"string"
],
"sortFields": [
"string"
]
Exemplo request
https://api.cvortex.com/v1/case/change-status
{
"operation": "BULK_CHANGE_STATUS"
}