Ingest a user
Create or update a user without sending a record.
ingestAUser stores user information independently of record ingestion. Use it to keep user data current before records arrive, or whenever a user changes and there is no related content item to submit.
let response = try await client.ingestAUser(request: .init(
clientId: "member-9",
clientUrl: "https://example.com/users/member-9",
email: "member@example.com",
name: "Avery Member",
username: "avery",
protected: false,
metadata: ["plan": .string("pro")]
))
print(response.id)Signature and fields
func ingestAUser(
request: UserInput,
requestOptions: RequestOptions? = nil
) async throws -> IngestUserResponseUserInput requires only clientId, your stable unique user identifier. It optionally accepts clientUrl, stripeAccountId, email, name, username, protected, and metadata. Reuse the same clientId to update the same logical user. Set protected deliberately: it controls whether the user is protected from automated moderation actions.
The response contains message and the Insion user id. Save that ID for retrieval, user filtering, and appeals. The success response confirms ingestion, not a user action decision.