@extends('layouts.main') @section('title', 'API Cases') @section('breadcrumb')

API CASES

@endsection @section('content')
@include('flash::message')

API Cases

For every GET or POST request you make to the API, include the following headers in your HTTP request: X-API-Key and X-Client-ID

{{ csrf_field() }}

Endpoints:

1. Cases

GET https://gmp.test/api/cases
Description: Retrieve cases with optional filtering by status.
Available Parameters:
- 'status' (optional): Filter cases by status. Possible values: 'Closed', 'Open', 'Answered', 'Suspended'.
Response Example:

[
    {
        "id": 000,
        "title": "Case Title",
        "description": "Case Description",
        "status": "Open",
        "cause": "Reason for the case",
        "priority": "Medium",
        "control": "Client",
        "queue": [
            "GOC: Security Incidents to investigate"
        ],
        "type_of_case": "CDS",
        "files": [
            "111": "file_name_1.jpg",
            "123": "file_name_2.pdf",
        ],
        "service": "Managed UTM",
        "notes": [
            {
                "user_data": "User Name",
                "created_at": "2023-08-07T08:06:11.000000Z",
                "note": "test comment 1 ! contains html tags ! "
            },
            {
                "user_data": "User Name",
                "created_at": "2023-08-07T08:06:23.000000Z",
                "note": "comment 2 test ! contains html tags ! "
            }
        ]
    }
]
              

2. Case File:

GET {{ route('api.caseFile') }}
Description: Retrieve case file
Required parameters:
- 'case_id'
- 'file_id'
Response: file

3. Update Case:

POST {{ route('api.updateCase') }}
Description: Change case status and/or priority.
Required parameters:
- 'case_id'
- 'skywatch_user_email': Email used to log into skywatch. The acknowledge and response time for the case will be assigned to this user.
Available Parameters:
- 'status'
- 'priority'
Note: Request without passing parameters 'status' and 'priority' will update the 'acknowledged_at' date if the conditions are met. Endpoint can be used for this purpose.
Response Example:

{
    "success": "Case updated"
}
              
@endsection