ReferencesPython SDKSteps

Send event

💡️ This guide is for sending events from inside an Inngest function. To send events outside an Inngest function, refer to the client event sending guide.

Sends 1 or more events to the Inngest server. Returns a list of the event IDs.

Arguments

  • Name
    step_id
    Type
    str
    Required
    required
    Description

    Step ID. Should be unique within the function.

  • Name
    events
    Type
    Event | list[Event]
    Required
    required
    Description

    1 or more events to send.

    Properties
    • Name
      data
      Type
      dict
      Required
      optional
      Description

      Any data to associate with the event.

    • Name
      id
      Type
      str
      Required
      optional
      Description

      A unique ID used to idempotently trigger function runs. If duplicate event IDs are seen, only the first event will trigger function runs.

    • Name
      name
      Type
      str
      Required
      required
      Description

      The event name. We recommend using lowercase dot notation for names (e.g. app/user.created)

    • Name
      ts
      Type
      int
      Required
      optional
      Description

      A timestamp integer representing the time (in milliseconds) at which the event occurred. Defaults to the time the Inngest receives the event.

      If the ts time is in the future, function runs will be scheduled to start at the given time. This has the same effect as sleeping at the start of the function.

      Note: This does not apply to functions waiting for events. Functions waiting for events will immediately resume, regardless of the timestamp.

Examples

@inngest_client.create_function(
    fn_id="my_function",
    trigger=inngest.TriggerEvent(event="app/my_function"),
)
async def fn(
    ctx: inngest.Context,
    step: inngest.Step,
) -> list[str]:
    return await step.send_event("send", inngest.Event(name="foo"))