Operations on individual graph episodes (units of ingested data).
Summary
Functions
Deletes an episode by uuid.
Fetches a single episode by uuid.
Lists episodes for a user's or graph's graph, paginated.
Lazily streams every episode for a user's or graph's graph across all pages, following the response cursor.
Functions
@spec delete(Zep.Client.t() | keyword(), String.t()) :: {:ok, term()} | {:error, term()}
Deletes an episode by uuid.
@spec get(Zep.Client.t() | keyword(), String.t()) :: {:ok, Zep.Schemas.Episode.t()} | {:error, term()}
Fetches a single episode by uuid.
@spec get_by_user_or_graph( Zep.Client.t() | keyword(), keyword() ) :: {:ok, %{episodes: [Zep.Schemas.Episode.t()], total_count: non_neg_integer() | nil}} | {:error, term()}
Lists episodes for a user's or graph's graph, paginated.
Options
:user_id/:graph_id- scope:limit/:cursor- pagination
@spec stream( Zep.Client.t() | keyword(), keyword() ) :: Enumerable.t()
Lazily streams every episode for a user's or graph's graph across all pages, following the response cursor.
Note
This assumes the last episode's uuid in a page can be used as the
next page's :cursor, consistent with the cursor pattern used
elsewhere in the API. If the API instead returns an explicit
next_cursor field, this will need a one-line update to read it
directly from the response instead - worth confirming against a live
response before relying on this for very large graphs.