Skip to content

Warning and error codes

Every dry-run and write returns a list of { code, path, message } entries. A code is machine-readable and stable. Warnings do not block a write unless _strict is set. Some codes are hard errors that reject the document outright. A clean document returns an empty list.

Code Meaning
octa_not_found A match by id or url found nothing. Never falls back to creating.
octa_slug_ambiguous A slug matched more than one record and no parent fixed it.
octa_missing_identifier No usable identifier was provided where one is required.
octa_invalid_match The _match block is present but not valid.
octa_match_conflict Identifiers in _match disagree with each other.
octa_match_ignored A supplied match was not usable and was ignored.
octa_identity_mismatch The document identity disagrees with the URL on the panel surface.
octa_identity_changed The record changed identity between resolve and write.
octa_type_conflict The declared type does not match the surface (a term written as a post, or the reverse).
octa_type_not_allowed The post type or taxonomy is not permitted.
octa_wrong_type The target record is a different type than declared.
Code Meaning
octa_unknown_key A top-level key without _ that isn’t recognised. Its value is not saved.
octa_unknown_control_key An unrecognised _* control key.
octa_unknown_field A fields key not in the field definition. Value dropped.
octa_unknown_layout A flexible-content layout that isn’t defined. Section not saved.
octa_unsupported_field A field type Octa Editor cannot write.
octa_missing_required A field required to create the record is missing.
octa_invalid_payload The request body is not a valid document.
Code Meaning
octa_relation_not_found A relation target does not exist. Skipped.
octa_term_not_found A taxonomy term slug does not exist. Assignment skipped.
octa_terms_skipped One or more taxonomy assignments were skipped.
octa_url_unresolvable A url identifier could not be resolved to a record.
Code Meaning
octa_status_adjusted The requested status was downgraded, for example without publish capability.
octa_cannot_publish The caller may not publish, so a publish status was refused.
octa_invalid_status The status value is not recognised.
octa_invalid_date The date is not in YYYY-MM-DD HH:MM:SS form.
octa_invalid_featured_image The featured image ID is not a valid attachment.
octa_author_skipped The author could not be set, for lack of capability.
octa_slug_adjusted The slug collided and was auto-suffixed.
octa_unknown_template The page template does not exist. Skipped.
Code Meaning
octa_parent_not_found The referenced parent does not exist. No fallback to root.
octa_parent_cycle A parent cycle in the batch. Rejects the whole batch.
octa_parent_loop A record is set as its own ancestor.
octa_duplicate_in_batch The same (type, slug) appears twice in one batch.
Code Meaning
octa_strict_failed Strict mode rejected the document because it raised a warning.
octa_conflict An optimistic-lock conflict. The record changed since it was read.
octa_save_failed The underlying write failed.
octa_forbidden The caller lacks the capability for this operation.
octa_too_many_attempts Too many failed auth attempts. The API returns HTTP 429.