> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# API Hapus Kasus

> Hapus kasus kepatuhan beserta laporan regulasi draf-nya di Didit. Laporan yang sudah final akan memblokir penghapusan hingga Anda menghapusnya.

Prompt API Hapus Kasus
Salin prompt ke papan klip

<pre>
  \`Delete a compliance case through the Management API.

  Endpoint:
  DELETE [https://verification.didit.me/v3/organization/\{organization\_id}/application/\{application\_id}/cases/\{case\_uuid}/](https://verification.didit.me/v3/organization/\{organization_id}/application/\{application_id}/cases/\{case_uuid}/)

  Authentication:
  Use the x-api-key header with my Didit API key. Use a full-access API key; the caller needs write:cases.

  Request body: none.

  Example call:
  curl -X DELETE "[https://verification.didit.me/v3/organization/\{organization\_id}/application/\{application\_id}/cases/\{case\_uuid}/](https://verification.didit.me/v3/organization/\{organization_id}/application/\{application_id}/cases/\{case_uuid}/)" \
  -H "x-api-key: YOUR\_API\_KEY"

  Response 204: the case is deleted.

  What is deleted:

  * The case.
  * Its draft regulatory reports.
    Linked verifications, people, companies and transactions are NOT deleted. There is no undelete endpoint.

  Failure modes:

  * 409 - the case has a finalized regulatory report. Nothing is deleted. The body has code: in\_filed\_report and names each report with uuid, report\_number, report\_type and case\_uuid. Delete the reports, then repeat this request.
  * 403 - the key cannot delete cases (requires a full-access key and write:cases).
  * 404 - the case does not exist in this application or was already deleted.

  For the full integration shape, see /integration/integration-prompt.\`
</pre>

Tempel ke

Hapus kasus secara permanen. Draf laporan regulasi miliknya ikut dihapus.

Verifikasi, orang, perusahaan, dan transaksi yang tertaut **tidak** dihapus. Tidak ada endpoint untuk membatalkan penghapusan.

## Diblokir oleh laporan yang sudah difinalkan

Jika kasus memiliki laporan regulasi yang sudah difinalkan, seluruh permintaan mengembalikan `409` dan tidak ada yang dihapus:

```json theme={null}
{
  "detail": "This case has a finalized regulatory report, so it cannot be deleted.",
  "code": "in_filed_report",
  "reports": [
    {
      "uuid": "5ec00000-0000-4000-8000-000000000007",
      "report_number": "SAR-0001",
      "report_type": "SAR",
      "case_uuid": "c1a5e000-0000-4000-8000-000000000001"
    }
  ]
}
```

Hapus setiap laporan dengan [Hapus Laporan](https://docs.didit.me/id/management-api/regulatory-reports/delete.md), lalu ulangi permintaan ini. Kasus dapat dihapus setelah tidak ada lagi laporan yang sudah difinalkan.

## Terkait

* [Dapatkan kasus](https://docs.didit.me/id/management-api/cases/get.md)
* [Perbarui kasus](https://docs.didit.me/id/management-api/cases/update.md)
* [Hapus laporan](https://docs.didit.me/id/management-api/regulatory-reports/delete.md)
* [Kasus (Konsol)](https://docs.didit.me/id/console/case-management/cases.md)


## OpenAPI

````yaml id/openapi-25.json DELETE /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API Verifikasi Identitas. Lakukan autentikasi dengan header x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/:
    delete:
      tags:
        - Cases
      summary: Hapus kasus
      description: >-
        Hapus kasus secara permanen. Draf laporan regulasi di dalamnya akan
        dihapus bersama kasus tersebut. Verifikasi, individu, perusahaan, dan
        transaksi yang tertaut tidak akan dihapus. Tidak ada endpoint untuk
        membatalkan penghapusan.


        Jika kasus memiliki laporan regulasi yang telah difinalisasi, seluruh
        permintaan akan ditolak dengan `409` dan tidak ada yang dihapus. Isi
        respons menggunakan `code: in_filed_report` dan menyebutkan setiap
        laporan beserta `uuid`, `report_number`, `report_type`, dan `case_uuid`.
        Hapus laporan tersebut, lalu ulangi permintaan.
      operationId: delete_case
      parameters:
        - name: organization_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID organisasi.
        - name: application_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID aplikasi.
        - name: case_uuid
          in: path
          required: true
          schema:
            type: string
            format: uuid
            example: c1a5e000-0000-4000-8000-000000000001
          description: UUID kasus.
      responses:
        '204':
          description: Kasus dihapus.
        '403':
          description: >-
            Kunci tidak dapat menghapus kasus. Tindakan ini memerlukan kunci
            akses penuh dengan `write:cases`.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
        '404':
          description: Kasus tidak ada dalam aplikasi ini atau sudah dihapus.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
        '409':
          description: >-
            Kasus memiliki laporan regulasi yang sudah final. Tidak ada yang
            dihapus.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InFiledReportError'
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X DELETE
            'https://verification.didit.me/v3/organization/11111111-2222-3333-4444-555555555555/application/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/cases/c1a5e000-0000-4000-8000-000000000001/'
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            # and DIDIT_APPLICATION_ID.
            client = Didit()

            client.cases.delete(
                "c1a5e000-0000-4000-8000-000000000001",
            )
        - lang: javascript
          label: Node.js
          source: |-
            import Didit from "@didit-protocol/sdk-node";

            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            // and DIDIT_APPLICATION_ID.
            const didit = new Didit();

            await didit.cases.delete("c1a5e000-0000-4000-8000-000000000001");
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID\n// and DIDIT_APPLICATION_ID.\nclient := didit.NewClient()\n\nif err := client.Cases.Delete(ctx, \"c1a5e000-0000-4000-8000-000000000001\"); err != nil {\n\tlog.Fatal(err)\n}"
        - lang: java
          label: Java
          source: |-
            import me.didit.Didit;

            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            // and DIDIT_APPLICATION_ID.
            Didit client = new Didit();

            client.cases().delete("c1a5e000-0000-4000-8000-000000000001");
        - lang: php
          label: PHP
          source: |-
            <?php

            require 'vendor/autoload.php';

            use Didit\DiditClient;

            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            // and DIDIT_APPLICATION_ID.
            $didit = new DiditClient();

            $didit->cases->delete('c1a5e000-0000-4000-8000-000000000001');
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            # and DIDIT_APPLICATION_ID.
            didit = Didit::Client.new

            didit.cases.delete("c1a5e000-0000-4000-8000-000000000001")
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using Didit;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            using var client = new DiditClient();


            await
            client.Cases.DeleteAsync("c1a5e000-0000-4000-8000-000000000001");
components:
  schemas:
    InFiledReportError:
      type: object
      description: >-
        Penghapusan ditolak karena data yang dipilih berada dalam laporan
        regulasi yang telah diselesaikan. Tidak ada yang dihapus. Hapus laporan
        tersebut, lalu ulangi permintaan.
      required:
        - detail
        - code
      properties:
        detail:
          type: string
        code:
          type: string
          enum:
            - in_filed_report
          description: >-
            Kode kesalahan stabil untuk penghapusan yang diblokir oleh laporan
            regulasi yang telah difinalisasi.
        reports:
          type: array
          items:
            $ref: '#/components/schemas/FiledRegulatoryReport'
          description: >-
            Laporan yang memblokir penghapusan orang, perusahaan, kasus, atau
            sesi.
        transactions:
          type: array
          items:
            $ref: '#/components/schemas/FiledReportTransaction'
          description: >-
            Transaksi yang memblokir penghapusan transaksi, masing-masing
            beserta laporan yang mencantumkannya.
    FiledRegulatoryReport:
      type: object
      description: Laporan regulasi yang sudah final mencegah penghapusan yang diminta.
      required:
        - uuid
        - report_number
        - report_type
        - case_uuid
      properties:
        uuid:
          type: string
          format: uuid
          description: UUID laporan.
        report_number:
          type: string
          description: Nomor laporan yang ditampilkan di Console (misalnya, SAR-0001).
        report_type:
          type: string
          enum:
            - SAR
            - STR
            - CTR
            - TTR
            - UTR
            - IFT
            - CBR
            - TFR
          description: Jenis laporan regulasi.
        case_uuid:
          type: string
          format: uuid
          description: Kasus tempat laporan ini bernaung.
    FiledReportTransaction:
      type: object
      description: >-
        Transaksi yang tidak dapat dihapus karena tercantum dalam laporan
        regulasi yang telah difinalisasi.
      required:
        - uuid
        - transaction_id
        - reports
      properties:
        uuid:
          type: string
          format: uuid
          description: UUID transaksi Didit.
        transaction_id:
          type: string
          description: Pengidentifikasi transaksi yang diberikan saat transaksi dibuat.
        reports:
          type: array
          items:
            $ref: '#/components/schemas/FiledRegulatoryReport'
          description: Laporan yang telah difinalisasi dan mencantumkan transaksi ini.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        Kunci API aplikasi Anda, dari Developers -> API keys di Business
        Console. Kunci utama memiliki akses penuh. Kunci bernama dapat diberi
        cakupan: none, read, atau write per sumber daya, dibatasi pada beberapa
        alur kerja atau pada sesi yang disetujui, pada daftar alamat IP, dan
        pada tanggal kedaluwarsa. 401 berarti kuncinya salah, dicabut, atau
        kedaluwarsa; 403 berarti tidak ada kunci yang dikirimkan, kunci tidak
        memiliki akses ke sumber daya atau tindakan ini, atau permintaan datang
        dari alamat di luar daftar IP-nya; 404 pada rute sesi berarti sesi
        berada di luar alur kerja atau status kunci tersebut. Kunci tanpa akses
        media menerima URL gambar, video, dan PDF sebagai null, dan kunci tanpa
        izin tulis sesi menerima tautan sesi dan token sebagai null. Lihat
        https://docs.didit.me/console/api-keys.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.