Skip to content

Endpoints de Service e Ticket

Services representam serviços profissionais ou projetos vinculados a entitlements da classe SVC. Tickets são solicitações individuais criadas contra serviços ou environments, rastreadas com status de SLA.

Endpoints de Service

Caminho base: /wp-json/middag-account/v1/services

MétodoEndpointAuthEscopoDescrição
GET/servicesJWT + OrgentitlementsListar serviços da organização
GET/services/{id}JWT + OrgentitlementsDetalhes do serviço
GET/services/{id}/ticketsJWT + OrgentitlementsSolicitações vinculadas ao serviço

GET /services

Filtros de query:

ParâmetroTipoValores
statusstringproposal, approved, in_progress, on_hold, delivered, closed, cancelled
lifecyclestringongoing, project

Resposta (200):

json
{
    "success": true,
    "data": [
        {
            "id": 801,
            "name": "Moodle Customization Project",
            "status": "in_progress",
            "lifecycle": "project",
            "entitlement_id": 103,
            "entitlement_code": "SVC-2026030005",
            "organization_id": 42,
            "created_at": "2026-03-15T10:00:00Z"
        }
    ],
    "meta": {
        "page": 1,
        "per_page": 20,
        "total": 1,
        "pages": 1
    }
}

GET /services/:id

Detalhes completos do serviço.

Campos de resposta: id, name, status, lifecycle, description, entitlement_id, entitlement_code, organization_id, metadata, created_at, updated_at.

Endpoints de Ticket

Caminho base: /wp-json/middag-account/v1/tickets

MétodoEndpointAuthEscopoDescrição
GET/ticketsJWT + OrgentitlementsListar SRs da organização
GET/tickets/{id}JWT + OrgentitlementsDetalhes da SR
POST/ticketsJWT + OrgentitlementsCriar solicitação de serviço
GET/tickets/{id}/historyJWT + OrgentitlementsHistorico de transicao de status

Formato do Número SR

Os números de solicitação de serviço seguem o padrão SR-{YEAR}{SEQ:4d}. Exemplo: SR-20260001, SR-20260042.

POST /tickets

Criar uma nova solicitação de serviço. Clientes so podem criar SRs para entitlements da classe ENV (avulso). Usuários admin podem criar para qualquer entitlement ou serviço.

Request:

json
{
    "title": "SSL Certificate Renewal",
    "description": "The SSL certificate for lms.example.com expires soon. Please renew.",
    "entitlement_id": 102,
    "priority": "high"
}

Resposta (201):

json
{
    "success": true,
    "data": {
        "id": 901,
        "number": "SR-20260042",
        "status": "open",
        "title": "SSL Certificate Renewal",
        "entitlement_id": 102
    },
    "message": "Service request created"
}

GET /tickets/:id/history

Retorna o historico completo de transicoes de status de uma solicitação de serviço.

Resposta (200):

json
{
    "success": true,
    "data": [
        {
            "from_status": null,
            "to_status": "open",
            "changed_at": "2026-04-01T10:00:00Z",
            "changed_by": 15
        },
        {
            "from_status": "open",
            "to_status": "in_progress",
            "changed_at": "2026-04-01T14:30:00Z",
            "changed_by": 1
        }
    ]
}

Status de Service

StatusDescrição
proposalServiço proposto, aguardando aprovação
approvedAprovado, trabalho ainda não iniciado
in_progressTrabalho em andamento
on_holdTemporariamente pausado
deliveredTrabalho concluido, aguardando aceite
closedAceito e encerrado (terminal)
cancelledCancelado antes da conclusão (terminal)

Status de Ticket

StatusDescrição
openRecem-criada, aguardando atribuição
in_progressEm andamento
waitingBloqueada, aguardando cliente ou terceiro
resolvedSolução fornecida, aguardando confirmacao
closedResolução confirmada (terminal)
cancelledCancelada (terminal)

Relacionados