{ "openapi": "3.0.2", "info": { "title": "Klaviyo API", "version": "2026-07-15", "description": "The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details.", "contact": { "name": "Klaviyo Developer Experience Team", "email": "developers@klaviyo.com", "url": "https://developers.klaviyo.com" }, "termsOfService": "https://www.klaviyo.com/legal/api-terms", "license": { "name": "License", "url": "https://www.klaviyo.com/legal" } }, "servers": [ { "url": "https://a.klaviyo.com", "description": "Production" } ], "security": [ { "Klaviyo-API-Key": [] } ], "paths": { "/api/object-types/{id}/object-ingestion-logs": { "get": { "operationId": "get_ingestion_logs_for_object_type", "summary": "Get Ingestion Logs for Object Type", "description": "Get the ingestion logs for a given object type.\n\nOnly ingestion failures are logged \u2014 the absence of a log entry for a\nrecord does not mean the record was ingested successfully.\n\nLogs are retained for 14 days; time filters outside that window return\nan empty page. Results are returned newest first with a fixed page\nsize of 50.

*Rate limits*:
Burst: `1/s`
Steady: `15/m`\n\n**Scopes:**\n`custom-objects:read`\n\n[OpenAPI Spec](https://raw.githubusercontent.com/klaviyo/openapi/main/openapi/stable/apis/get_ingestion_logs_for_object_type.json)", "parameters": [ { "name": "id", "in": "path", "description": "The ULID ID of the object type.", "required": true, "schema": { "description": "The ULID ID of the object type.", "type": "string", "example": "01K5YKKQKM819VVGCPZZKGE6D4" } }, { "name": "fields[object-ingestion-log]", "in": "query", "description": "For more information please visit https://developers.klaviyo.com/en/v2026-07-15/reference/api-overview#sparse-fieldsets", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "errors", "event_type", "id", "status", "summary", "timestamp" ] } }, "explode": false }, { "name": "fields[object-record]", "in": "query", "description": "For more information please visit https://developers.klaviyo.com/en/v2026-07-15/reference/api-overview#sparse-fieldsets", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "id", "record_properties" ] } }, "explode": false }, { "name": "fields[object-type]", "in": "query", "description": "For more information please visit https://developers.klaviyo.com/en/v2026-07-15/reference/api-overview#sparse-fieldsets", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "created_at", "description", "id", "namespace", "status", "title", "updated_at" ] } }, "explode": false }, { "name": "filter", "in": "query", "description": "For more information please visit https://developers.klaviyo.com/en/v2026-07-15/reference/api-overview#filtering
Allowed field(s)/operator(s):
`record_id`: `equals` (string)
`status`: `any`, `equals` (allowed values: `'error'`, `'warning'`, `'info'`)
`event_type`: `any`, `equals` (allowed values: `'validation_error'`)
`timestamp`: `greater-or-equal`, `less-than` (date-time)", "schema": { "type": "string", "example": "equals(record_id,'A3LD92')" } }, { "name": "include", "in": "query", "description": "For more information please visit https://developers.klaviyo.com/en/v2026-07-15/reference/api-overview#relationships", "schema": { "type": "array", "items": { "type": "string", "enum": [ "object-record", "object-type" ] } }, "explode": false }, { "name": "page[cursor]", "in": "query", "description": "For more information please visit https://developers.klaviyo.com/en/v2026-07-15/reference/api-overview#pagination", "required": false, "schema": { "type": "string" } }, { "name": "revision", "in": "header", "description": "API endpoint revision (format: YYYY-MM-DD[.suffix])", "required": true, "schema": { "type": "string", "default": "2026-07-15" } } ], "responses": { "200": { "description": "Success", "content": { "application/vnd.api+json": { "schema": { "$ref": "#/components/schemas/GetIngestionLogResponseCollectionCompoundDocument" } } } }, "4XX": { "$ref": "#/components/responses/ClientError" }, "5XX": { "$ref": "#/components/responses/ServerError" } }, "tags": [ "Custom Objects" ], "x-klaviyo-filters": { "record_id": { "operators": { "single": [ "equals" ] }, "value": { "type": "string" } }, "status": { "operators": { "list": [ "any", "equals" ], "single": [ "equals" ] }, "value": { "type": "string", "enum": [ "error", "warning", "info" ] } }, "event_type": { "operators": { "list": [ "any", "equals" ], "single": [ "equals" ] }, "value": { "type": "string", "enum": [ "validation_error" ] } }, "timestamp": { "operators": { "single": [ "greater-or-equal", "less-than" ] }, "value": { "type": "string", "format": "date-time" } } }, "x-klaviyo-operation-aliases": [ "get_object_type_ingestion_logs" ], "x-klaviyo-pre-release": "None", "x-klaviyo-ratelimit": { "burst": "1/s", "steady": "15/m" }, "x-klaviyo-scopes": [ "custom-objects:read" ], "x-klaviyo-subtag": "Ingestion Logs" } } }, "components": { "responses": { "ClientError": { "description": "Client Error", "content": { "application/vnd.api+json": { "schema": { "type": "object", "properties": { "errors": { "type": "array", "items": { "type": "object", "required": [ "id", "code", "title", "detail" ], "properties": { "id": { "type": "string" }, "code": { "type": "string" }, "title": { "type": "string" }, "detail": { "type": "string" }, "source": { "type": "object", "properties": { "pointer": { "type": "string" }, "parameter": { "type": "string" } } } } } } }, "required": [ "errors" ] } } } }, "ServerError": { "description": "Server Error", "content": { "application/vnd.api+json": { "schema": { "type": "object", "properties": { "errors": { "type": "array", "items": { "type": "object", "required": [ "id", "code", "title", "detail" ], "properties": { "id": { "type": "string" }, "code": { "type": "string" }, "title": { "type": "string" }, "detail": { "type": "string" }, "source": { "type": "object", "properties": { "pointer": { "type": "string" }, "parameter": { "type": "string" } } } } } } }, "required": [ "errors" ] } } } } }, "schemas": { "AgentHints": { "description": "Optional hints emitted by the API for agent callers", "type": "object", "properties": { "next_steps": { "description": "Suggested follow-up actions for agents to take after this response", "type": "array", "items": { "type": "string" } } } }, "CollectionLinks": { "type": "object", "properties": { "self": { "type": "string", "format": "uri" }, "prev": { "type": "string", "format": "uri" }, "next": { "type": "string", "format": "uri" } }, "required": [ "self" ] }, "GetIngestionLogResponseCollectionCompoundDocument": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/IngestionLogResponseObjectResource" } }, "links": { "$ref": "#/components/schemas/CollectionLinks" }, "meta": { "$ref": "#/components/schemas/ResponseMeta" }, "included": { "type": "array", "items": { "oneOf": [ { "$ref": "#/components/schemas/ObjectTypeResponseObjectResource" }, { "$ref": "#/components/schemas/ObjectRecordResponseObjectResource" } ] } } }, "required": [ "data" ] }, "IngestionLogErrorDetail": { "type": "object", "properties": { "code": { "description": "The machine-readable validation error code.", "type": "string", "example": "string_type" }, "message": { "description": "The human-readable validation error message.", "type": "string", "example": "Input should be a valid string" }, "property": { "description": "The path of the record property that failed validation.", "type": "string", "example": "related_items" }, "invalid_value": { "description": "The value that failed validation, JSON-encoded as a string.", "type": "string", "example": "[\"A1B2C3\",\"D4E5F6\"]", "nullable": true } }, "required": [ "code", "message", "property" ] }, "IngestionLogResponseObjectResource": { "type": "object", "properties": { "type": { "$ref": "#/components/schemas/ObjectIngestionLogEnum" }, "id": { "description": "The unique ID of the ingestion log entry.", "type": "string", "example": "5f0e7b1a-4a4e-4d0a-b8a1-2f47f1e59c2d" }, "attributes": { "type": "object", "properties": { "status": { "description": "The severity of the log entry.", "type": "string", "example": "error", "enum": [ "error", "info", "warning" ] }, "event_type": { "description": "The type of ingestion event that produced this log entry.", "type": "string", "example": "validation_error", "enum": [ "validation_error" ] }, "timestamp": { "description": "The date and time when the event occurred.", "type": "string", "format": "date-time", "example": "2022-11-08T00:00:00+00:00" }, "summary": { "description": "A short human-readable summary of the event.", "type": "string", "example": "1 validation error for A3LD92" }, "errors": { "description": "The validation errors for this event. Empty when no structured error detail is available; see `summary` in that case.", "type": "array", "items": { "$ref": "#/components/schemas/IngestionLogErrorDetail" } } }, "required": [ "status", "event_type", "timestamp", "summary", "errors" ] }, "relationships": { "type": "object", "properties": { "object-type": { "type": "object", "properties": { "data": { "type": "object", "properties": { "type": { "$ref": "#/components/schemas/ObjectTypeEnum" }, "id": { "description": "The object type these logs belong to.", "type": "string" } }, "required": [ "type", "id" ] }, "links": { "$ref": "#/components/schemas/RelationshipLinks" } } }, "object-record": { "type": "object", "properties": { "data": { "type": "object", "properties": { "type": { "$ref": "#/components/schemas/ObjectRecordEnum" }, "id": { "description": "The object record that produced this event. Present only when the event is associated with a record; the record may not resolve if it failed validation.", "type": "string" } }, "required": [ "type", "id" ] }, "links": { "$ref": "#/components/schemas/RelationshipLinks" } } } } }, "links": { "$ref": "#/components/schemas/ObjectLinks" } }, "required": [ "type", "id", "attributes", "links" ] }, "ObjectIngestionLogEnum": { "type": "string", "enum": [ "object-ingestion-log" ] }, "ObjectLinks": { "type": "object", "properties": { "self": { "type": "string", "format": "uri" } }, "required": [ "self" ] }, "ObjectRecordEnum": { "type": "string", "enum": [ "object-record" ] }, "ObjectRecordResponseObjectResource": { "type": "object", "properties": { "type": { "$ref": "#/components/schemas/ObjectRecordEnum" }, "id": { "description": "The compound ID of the object record, formatted as object_type_id:::object_record_id", "type": "string", "example": "01JXKYCN9A5M3QPVR8T2WE4BLD:::sub-001" }, "attributes": { "type": "object", "properties": { "record_properties": { "description": "The properties of this object record as defined by the object schema", "type": "object" } }, "required": [ "record_properties" ] }, "links": { "$ref": "#/components/schemas/ObjectLinks" } }, "required": [ "type", "id", "attributes", "links" ] }, "ObjectSchemaEnum": { "type": "string", "enum": [ "object-schema" ] }, "ObjectTypeEnum": { "type": "string", "enum": [ "object-type" ] }, "ObjectTypeResponseObjectResource": { "type": "object", "properties": { "type": { "$ref": "#/components/schemas/ObjectTypeEnum" }, "id": { "description": "The ULID ID of the object type", "type": "string", "example": "01JXKYCN9A5M3QPVR8T2WE4BLD" }, "attributes": { "type": "object", "properties": { "title": { "description": "The title for this object type", "type": "string", "example": "Pet Care Subscription" }, "description": { "description": "The description of this object type", "type": "string" }, "status": { "description": "The status of the schema associated with this object type", "type": "string", "enum": [ "active", "draft", "publishing", "undefined" ] }, "namespace": { "description": "The namespace of this object type. Either `custom-objects` or `applications/`, where `` is the ULID of the OAuth application that owns the object type.", "type": "string" }, "created_at": { "description": "The date and time when this object type was created", "type": "string", "format": "date-time", "example": "2022-11-08T00:00:00+00:00" }, "updated_at": { "description": "The date and time when this object type was last updated", "type": "string", "format": "date-time", "example": "2022-11-08T00:00:00+00:00" } }, "required": [ "title", "description", "status", "namespace", "created_at", "updated_at" ] }, "relationships": { "type": "object", "properties": { "current-schema": { "type": "object", "properties": { "data": { "type": "object", "properties": { "type": { "$ref": "#/components/schemas/ObjectSchemaEnum" }, "id": { "description": "The current active schema for this object type", "type": "string" } }, "required": [ "type", "id" ] }, "links": { "$ref": "#/components/schemas/RelationshipLinks" } } }, "draft-schema": { "type": "object", "properties": { "data": { "type": "object", "properties": { "type": { "$ref": "#/components/schemas/ObjectSchemaEnum" }, "id": { "description": "The draft schema for this object type, if one exists", "type": "string" } }, "required": [ "type", "id" ] }, "links": { "$ref": "#/components/schemas/RelationshipLinks" } } }, "schema-versions": { "type": "object", "properties": { "data": { "type": "array", "items": { "type": "object", "required": [ "type", "id" ], "properties": { "type": { "$ref": "#/components/schemas/ObjectSchemaEnum" }, "id": { "description": "All schema versions for this object type", "type": "string" } } } }, "links": { "$ref": "#/components/schemas/RelationshipLinks" } } }, "object-types": { "type": "object", "properties": { "data": { "type": "array", "items": { "type": "object", "required": [ "type", "id" ], "properties": { "type": { "$ref": "#/components/schemas/ObjectTypeEnum" }, "id": { "description": "The object type relationships for this object type", "type": "string" } } } }, "links": { "$ref": "#/components/schemas/RelationshipLinks" } } }, "profile-object-types": { "type": "object", "properties": { "data": { "type": "array", "items": { "type": "object", "required": [ "type", "id" ], "properties": { "type": { "$ref": "#/components/schemas/ProfileObjectTypeEnum" }, "id": { "description": "The profile object type relationships for this object type", "type": "string" } } } }, "links": { "$ref": "#/components/schemas/RelationshipLinks" } } } } }, "links": { "$ref": "#/components/schemas/ObjectLinks" } }, "required": [ "type", "id", "attributes", "links" ] }, "ProfileObjectTypeEnum": { "type": "string", "enum": [ "profile-object-type" ] }, "RelationshipLinks": { "type": "object", "properties": { "self": { "type": "string", "format": "uri" }, "related": { "type": "string", "format": "uri" } }, "required": [ "self", "related" ] }, "ResponseMeta": { "description": "Response-level metadata", "type": "object", "properties": { "agent_hints": { "$ref": "#/components/schemas/AgentHints" } } } }, "securitySchemes": { "Klaviyo-API-Key": { "type": "apiKey", "in": "header", "name": "Authorization", "description": "Private key authentication for /api/ endpoints is performed by setting the `Authorization` header to `Klaviyo-API-Key your-private-api-key`
For more information please visit https://developers.klaviyo.com/en/v2026-07-15/reference/api-overview#authentication", "x-default": "Klaviyo-API-Key your-private-api-key" } } }, "tags": [ { "name": "Custom Objects", "description": "custom objects" } ] }