Skip to content

Case Status Retrieval Example

Detta exempel visar hur man hämtar ärendestatusinformation med GET /cases endpoint. Du kan hämta status för ett specifikt ärende eller fråga efter flera ärenden baserat på deras status, state eller avslutsinformation.

Case-resursen innehåller detaljerad statusspårning inklusive nuvarande state, statushistorik och avslutsinformation. Detta är användbart för att övervaka ärendeframsteg och identifiera ärenden som har avslutats.

Alla API-requests kräver en giltig autentiseringstoken i X-API-Key header. För detaljer om autentiseringsprocessen och tokenhantering, se Authentication documentation.

I denna guide kommer vi att använda AuthTokenProvider-klassen (dokumenterad i autentiseringsguiden) för att hantera tokenhantering.

Hämta Specifik Case Status

Hämta statusinformation för ett specifikt ärende med Case endpoint:

typescript
const token = await auth.getValidToken()
const caseId = '6867da7788b9226bb78d716c'

const projection = encodeURIComponent(
  JSON.stringify({
    _id: 1,
    state: 1,
    status: 1,
    closed: 1,
    state_history: 1,
    status_history: 1,
    'debt.invoice_number': 1,
  })
)

const response = await axios.get(
  `https://api-sandbox.amili.se/cases/${caseId}?projection=${projection}`,
  {
    headers: {
      'X-API-Key': token,
    },
  }
)
python
import json

token = auth.get_valid_token()
case_id = '6867da7788b9226bb78d716c'

projection = json.dumps({
    '_id': 1,
    'state': 1,
    'status': 1,
    'closed': 1,
    'state_history': 1,
    'status_history': 1,
    'debt.invoice_number': 1,
})

response = requests.get(
    f'https://api-sandbox.amili.se/cases/{case_id}',
    params={'projection': projection},
    headers={'X-API-Key': token}
)
response.raise_for_status()
result = response.json()

Svaret kommer att inkludera nuvarande state och status, tillsammans med historiska ändringar:

json
{
  "_id": "6867da7788b9226bb78d716c",
  "debt": {
    "invoice_number": "INV-2025-003"
  },
  "state": "debt_collection",
  "status": "debt_collection_active",
  "state_history": [
    {
      "state": "invoice",
      "state_date": "Mon, 07 Jul 2025 00:00:00 GMT"
    },
    {
      "state": "reminder",
      "state_date": "Mon, 11 Aug 2025 00:00:00 GMT"
    },
    {
      "state": "debt_collection",
      "state_date": "Mon, 25 Aug 2025 00:00:00 GMT"
    }
  ],
  "status_history": [
    {
      "status": "invoice_sent",
      "status_date": "Mon, 07 Jul 2025 00:00:00 GMT"
    },
    {
      "status": "reminder_sent",
      "status_date": "Mon, 11 Aug 2025 00:00:00 GMT"
    },
    {
      "status": "debt_collection_active",
      "status_date": "Mon, 25 Aug 2025 00:00:00 GMT"
    }
  ]
}

Vanliga Case Status

state-fältet indikerar nuvarande stadium av ärendet:

  • invoice - Fakturastadium
  • reminder - Påminnelse skickad, väntar på betalning
  • debt_collection - I inkasso
  • enforcement - Hos kronofogden
  • debt_surveillance - Långtidsövervakning
  • amortization - Avbetalningsplan aktiv
  • closed - Ärendet är avslutat

Hämta Avslutade Ärenden

Hämta alla avslutade ärenden med Pagination and Queries funktionalitet:

typescript
const token = await auth.getValidToken()

const where = encodeURIComponent(JSON.stringify({ closed: { $exists: true } }))
const projection = encodeURIComponent(
  JSON.stringify({
    _id: 1,
    closed: 1,
    'debt.invoice_number': 1,
    total_remaining_capital_amount: 1,
  })
)

const response = await axios.get(
  `https://api-sandbox.amili.se/cases?where=${where}&projection=${projection}&sort=-closed.close_date&max_results=50`,
  {
    headers: {
      'X-API-Key': token,
    },
  }
)
python
import json

token = auth.get_valid_token()

where = json.dumps({'closed': {'$exists': True}})
projection = json.dumps({
    '_id': 1,
    'closed': 1,
    'debt.invoice_number': 1,
    'total_remaining_capital_amount': 1,
})

response = requests.get(
    'https://api-sandbox.amili.se/cases',
    params={
        'where': where,
        'projection': projection,
        'sort': '-closed.close_date',
        'max_results': 50,
    },
    headers={'X-API-Key': token}
)
response.raise_for_status()
result = response.json()

Svaret kommer att inkludera alla avslutade ärenden med deras avslutsinformation:

json
{
  "_items": [
    {
      "_id": "507f1f77bcf86cd799439011",
      "debt": {
        "invoice_number": "INV-2025-020"
      },
      "closed": {
        "close_date": "Wed, 03 Sep 2025 11:18:59 GMT",
        "reason": "fully_paid"
      },
      "total_remaining_capital_amount": 0
    },
    {
      "_id": "507f1f77bcf86cd799439012",
      "debt": {
        "invoice_number": "INV-2025-019"
      },
      "closed": {
        "close_date": "Tue, 02 Sep 2025 14:22:15 GMT",
        "reason": "recalled"
      },
      "total_remaining_capital_amount": 1500.5
    },
    {
      "_id": "507f1f77bcf86cd799439013",
      "debt": {
        "invoice_number": "INV-2025-018"
      },
      "closed": {
        "close_date": "Mon, 01 Sep 2025 09:45:30 GMT",
        "reason": "bankruptcy"
      },
      "total_remaining_capital_amount": 2500.0
    }
  ],
  "_meta": {
    "page": 1,
    "max_results": 50,
    "total": 142
  }
}

Vanliga avslutsorsaker

closed.reason-fältet indikerar varför ärendet avslutades:

  • fully_paid - Helt betald av gäldenär
  • fully_paid_depreciation - Helt betald med avskrivning
  • fully_paid_before_reminder - Betald före påminnelsestadium
  • fully_paid_before_debt_collection - Betald före inkassostadium
  • recalled - Återkallad av borgenär
  • credit - Krediterad av borgenär
  • deceased - Gäldenär avliden
  • bankruptcy - Gäldenär konkurs
  • written_off - Avskriven
  • debt_restructuring - Skuldsaneringsarrangemang
  • capital_paid_to_creditor - Kapital utbetalt till borgenär
  • dispute - Tvistlösning
  • cancellation - Avbruten

Hämta Ärenden Avslutade Efter Specifikt Datum

Hämta ärenden som avslutades efter ett specifikt datum med MongoDB query operators:

typescript
const token = await auth.getValidToken()

const where = encodeURIComponent(
  JSON.stringify({
    closed: { $exists: true },
    'closed.close_date': { $gt: 'Mon, 13 Jan 2026 00:00:00 GMT' },
  })
)
const projection = encodeURIComponent(
  JSON.stringify({
    _id: 1,
    closed: 1,
    'debt.invoice_number': 1,
    total_remaining_capital_amount: 1,
  })
)

const response = await axios.get(
  `https://api-sandbox.amili.se/cases?where=${where}&projection=${projection}&sort=-closed.close_date`,
  {
    headers: {
      'X-API-Key': token,
    },
  }
)
python
import json

token = auth.get_valid_token()

where = json.dumps({
    'closed': {'$exists': True},
    'closed.close_date': {'$gt': 'Mon, 13 Jan 2026 00:00:00 GMT'},
})
projection = json.dumps({
    '_id': 1,
    'closed': 1,
    'debt.invoice_number': 1,
    'total_remaining_capital_amount': 1,
})

response = requests.get(
    'https://api-sandbox.amili.se/cases',
    params={
        'where': where,
        'projection': projection,
        'sort': '-closed.close_date',
    },
    headers={'X-API-Key': token}
)
response.raise_for_status()
result = response.json()

Denna query använder MongoDB $gt (greater than) operator för att filtrera ärenden som avslutades efter det angivna datumet. Detta är användbart för inkrementella exporter där du bara vill hämta ärenden som avslutats sedan din senaste query.

Hämta Ärenden efter Avslutsorsak

Filtrera avslutade ärenden efter specifik avslutsorsak:

typescript
const token = await auth.getValidToken()

const where = encodeURIComponent(
  JSON.stringify({
    'closed.reason': 'fully_paid',
  })
)
const projection = encodeURIComponent(
  JSON.stringify({
    _id: 1,
    closed: 1,
    'debt.invoice_number': 1,
    total_remaining_capital_amount: 1,
  })
)

const response = await axios.get(
  `https://api-sandbox.amili.se/cases?where=${where}&projection=${projection}`,
  {
    headers: {
      'X-API-Key': token,
    },
  }
)
python
import json

token = auth.get_valid_token()

where = json.dumps({
    'closed.reason': 'fully_paid',
})
projection = json.dumps({
    '_id': 1,
    'closed': 1,
    'debt.invoice_number': 1,
    'total_remaining_capital_amount': 1,
})

response = requests.get(
    'https://api-sandbox.amili.se/cases',
    params={
        'where': where,
        'projection': projection,
    },
    headers={'X-API-Key': token}
)
response.raise_for_status()
result = response.json()

Relaterad Dokumentation