# 📊 Get lifecycle events

Get lifecycle events with optional filtering.
- Without parameters: Returns all lifecycle events for the PDP client
- With object_type only: Returns all events for that object type
- With both parameters: Returns events for a specific object

Use `invoice` for both structured and exempt invoices.

Endpoint: GET /lifecycle-events
Version: 0.29.6
Security: APIKeyHeader

## Query parameters:

  - `object_type` (string)
    Filter by object type

  - `object_id` (string)
    Filter by object ID

## Header parameters:

  - `X-PDP-Client-Id` (string, required)
    ID of the PDP Client for which the operation is performed

## Response 200 fields (application/json):

  - `status_code` (string, required)
    Unified lifecycle status codes for all object types.
    Enum: "InvoiceLifecycleStatus.DEPOSITED", "InvoiceLifecycleStatus.TRANSMITTED_BY_PLATFORM", "InvoiceLifecycleStatus.RECEIVED_BY_PLATFORM", "InvoiceLifecycleStatus.MADE_AVAILABLE", "InvoiceLifecycleStatus.ACKNOWLEDGED", "InvoiceLifecycleStatus.APPROVED", "InvoiceLifecycleStatus.PARTIALLY_APPROVED", "InvoiceLifecycleStatus.IN_DISPUTE", "InvoiceLifecycleStatus.SUSPENDED", "InvoiceLifecycleStatus.COMPLETED", "InvoiceLifecycleStatus.REFUSED", "InvoiceLifecycleStatus.PAYMENT_TRANSMITTED", "InvoiceLifecycleStatus.COLLECTED", "InvoiceLifecycleStatus.REJECTED", "RegulatoryDataStatus.DEPOSITED", "RegulatoryDataStatus.REJECTED", "RegulatoryDataStatus.MADE_AVAILABLE", "RegulatoryDataStatus.ACCEPTED_BY_ADMINISTRATION", "RegulatoryDataStatus.REFUSED_BY_ADMINISTRATION", "FlowStatus.RECEIVABLE", "FlowStatus.UNACCEPTABLE", "DirectoryEntryStatus.ACCEPTED", "DirectoryEntryStatus.REJECTED", "TransactionDataStatus.DEPOSITED", "TransactionDataStatus.REJECTED", "TransactionDataStatus.REFUSED_BY_ADMINISTRATION", "TransactionDataStatus.ACCEPTED_BY_ADMINISTRATION", "LifecycleStatusReporting.REJECTED", "MandateLifecycleStatus.CREATED", "MandateLifecycleStatus.ACTIVATED", "MandateLifecycleStatus.REVOKED"

  - `timestamp` (string, required)

  - `emitter` (string, required)
    Platform or system that emitted the status

  - `reason` (any)
    Optional free-text reason or comment

  - `rejection_reason` (any)
    Structured rejection reason code when status indicates rejection

  - `is_mandatory` (boolean)
    Whether this status must be reported to PPF within 24 hours

## Response 422 fields (application/json):

  - `detail` (array)

  - `detail.loc` (array, required)

  - `detail.msg` (string, required)

  - `detail.type` (string, required)

