@dialstack/sdk-dev / js/src / CallLog
Interface: CallLog
Defined in: sdk/js/src/types/components.ts:234
Properties
answered_at
answered_at: string | null;
Defined in: sdk/js/src/types/components.ts:293
connected_at
connected_at: string | null;
Defined in: sdk/js/src/types/components.ts:298
did
did: string | CallLogDID | null;
Defined in: sdk/js/src/types/components.ts:249
The phone number (DID) associated with the call. The DID's id by default,
or a compact DID object (id + phone_number) when expand[]=did is
requested; null when none.
did_id
did_id: string | null;
Defined in: sdk/js/src/types/components.ts:243
Deprecated
Use did (its id form). Retained for backwards compatibility.
direction
direction: "inbound" | "outbound" | "internal";
Defined in: sdk/js/src/types/components.ts:269
duration_seconds
duration_seconds: number | null;
Defined in: sdk/js/src/types/components.ts:300
ended_at
ended_at: string | null;
Defined in: sdk/js/src/types/components.ts:299
endpoint?
optional endpoint?: string | null;
Defined in: sdk/js/src/types/components.ts:239
endpoint_id
endpoint_id: string | null;
Defined in: sdk/js/src/types/components.ts:241
Deprecated
Use endpoint. Retained for backwards compatibility.
from_label
from_label: string | null;
Defined in: sdk/js/src/types/components.ts:282
The caller's display name. For internal callers this is the calling user's display name (the caller is always a user's device); for external callers it is the caller ID name (CNAM). While a call is live it is the name captured at call start. Null when no name is available.
For external callers the CNAM is not interpreted, only trimmed and limited
to 80 characters, so it may be a locality rather than a person ("LA MESA
CA"), a placeholder ("WIRELESS CALLER"), or a restatement of from_number —
check for the latter before rendering the name beside the number.
from_number
from_number: string;
Defined in: sdk/js/src/types/components.ts:270
hangup_cause
hangup_cause: number | null;
Defined in: sdk/js/src/types/components.ts:309
id
id: string;
Defined in: sdk/js/src/types/components.ts:235
quality_metrics
quality_metrics: QualityMetricLeg[];
Defined in: sdk/js/src/types/components.ts:320
recording_url
recording_url: string | null;
Defined in: sdk/js/src/types/components.ts:317
related_call
related_call: string | null;
Defined in: sdk/js/src/types/components.ts:268
Another call belonging to the same conversation, as a call id; null when this call stands alone, which is the common case.
One conversation does not always fit in one call log. Today that happens when a parked caller is picked back up: the retrieval is a new call from the retriever's endpoint and so gets its own entry, and the two name each other. Treat the field as "there is more of this conversation over there" rather than as a park-specific marker — other flows may populate it later.
It does not say which way it points, and it does not need to. started_at
orders a linked group, and the earliest entry is the one the conversation
started on; follow the links to walk a longer chain.
The relation can be many-to-one — several entries may name the same call while it names only one of them back — so do not assume the link round-trips to the entry you came from.
sentiment
sentiment: Sentiment | null;
Defined in: sdk/js/src/types/components.ts:316
AI-derived sentiment of the call transcript. Null if the call was not recorded, the transcript is not yet processed, or the analysis did not produce a usable result.
started_at
started_at: string;
Defined in: sdk/js/src/types/components.ts:292
status
status: "failed" | "voicemail" | "completed" | "no-answer" | "busy" | null;
Defined in: sdk/js/src/types/components.ts:305
Final call status. Null while the call is still live (in progress) — the status values are terminal only.
summary
summary: string | null;
Defined in: sdk/js/src/types/components.ts:310
to_label
to_label: string | null;
Defined in: sdk/js/src/types/components.ts:291
to_number
to_number: string | null;
Defined in: sdk/js/src/types/components.ts:290
Destination number/extension. While a call is live it is present when the destination is known at call start (outbound and internal extension-to- extension calls); for an inbound call the routed destination is resolved later, so this is null for the whole time the call is in flight and is populated once the call completes.
user?
optional user?: string | null;
Defined in: sdk/js/src/types/components.ts:236
user_id
user_id: string | null;
Defined in: sdk/js/src/types/components.ts:238
Deprecated
Use user. Retained for backwards compatibility.