Skip to content

Retrieve a sequence enrollment

sequence.retrieve_enrollment(strenrollment_id, SequenceRetrieveEnrollmentParams**kwargs) -> SequenceRetrieveEnrollmentResponse
GET/v1/sequences/{id}/enrollments/{enrollmentId}

Retrieves a single enrollment by its ID: the contact’s position in the cadence and its latest activity. Test-run enrollments are not returned.

Required scope: sequences:read

Rate limit category: Read

ParametersExpand Collapse
id: str

Unique identifier of the sequence.

enrollment_id: str

Unique identifier of the enrollment to retrieve.

ReturnsExpand Collapse
class SequenceRetrieveEnrollmentResponse: …
id: str

Unique identifier of the enrollment.

cancelled_at: Optional[str]

When the enrollment was cancelled, or null if it was not.

completed_at: Optional[str]

When the enrollment completed, or null if it has not.

contact_id: str

ID of the enrolled contact.

current_step_id: Optional[str]

ID of the step the contact is on, matching definition.steps; null when the contact has no current step the API returns.

enrolled_at: str

When the contact was enrolled.

enrolled_by: Optional[str]

Member ID of whoever enrolled the contact; null when they are no longer a member or the enrollment was automatic.

last_activity_at: Optional[str]

When lastActivityKind happened; null when there has been no activity.

last_activity_kind: Optional[Literal["SENT", "OPENED", "REPLIED", 4 more]]

The latest activity on the enrollment. A reply or bounce that ended the enrollment is reported over a later open.

One of the following:
"SENT"
"OPENED"
"REPLIED"
"BOUNCED"
"INVITED"
"CONNECTED"
"SEEN"
next_send_at: Optional[str]

Estimated time of the next send, from the cadence, send window, pacing and sender; queue order and random gaps can push it later. Null while a message awaits review or is sending, while paused, or when it cannot be estimated.

remaining_sends: Optional[int]

Email and LinkedIn steps not yet sent, connection requests included.

minimum-9007199254740991
maximum9007199254740991
replied_at: Optional[str]

When the contact first replied, on email or LinkedIn; null if they have not.

status: Optional[Literal["ACTIVE", "AWAITING_REVIEW", "NEEDS_ATTENTION", 5 more]]

ACTIVE is progressing; AWAITING_REVIEW has a message waiting for approval; NEEDS_ATTENTION is held by a failed step, a held draft or an unavailable sender; PAUSED is stopped because the sequence is deactivated or it was paused in Lightfield. REPLIED, COMPLETED, CANCELLED and FAILED are final.

One of the following:
"ACTIVE"
"AWAITING_REVIEW"
"NEEDS_ATTENTION"
"REPLIED"
"COMPLETED"
"PAUSED"
"CANCELLED"
"FAILED"

Retrieve a sequence enrollment

from lightfield import Lightfield

client = Lightfield(
    api_key="My API Key",
)
sequence_retrieve_enrollment_response = client.sequence.retrieve_enrollment(
    enrollment_id="enrollmentId",
    id="id",
)
print(sequence_retrieve_enrollment_response.id)
{
  "id": "id",
  "cancelledAt": "cancelledAt",
  "completedAt": "completedAt",
  "contactId": "contactId",
  "currentStepId": "currentStepId",
  "enrolledAt": "enrolledAt",
  "enrolledBy": "enrolledBy",
  "lastActivityAt": "lastActivityAt",
  "lastActivityKind": "SENT",
  "nextSendAt": "nextSendAt",
  "remainingSends": -9007199254740991,
  "repliedAt": "repliedAt",
  "status": "ACTIVE"
}
Returns Examples
{
  "id": "id",
  "cancelledAt": "cancelledAt",
  "completedAt": "completedAt",
  "contactId": "contactId",
  "currentStepId": "currentStepId",
  "enrolledAt": "enrolledAt",
  "enrolledBy": "enrolledBy",
  "lastActivityAt": "lastActivityAt",
  "lastActivityKind": "SENT",
  "nextSendAt": "nextSendAt",
  "remainingSends": -9007199254740991,
  "repliedAt": "repliedAt",
  "status": "ACTIVE"
}