Texecom Event Schemas

JSON Schema Documentation

Media Object Deleted Payload

Emitted once when a media object is deleted, from any earlier status (pending, ready or rejected). Its files are removed and its signed URLs stop resolving; an owning service holding a reference should drop it.

$idhttps://schemas.texecom-prod.com/v2/events/payload/service/media/object/deleted/v1.0.0.json
$schemahttp://json-schema.org/draft-07/schema

Properties

NameType
mediaIdString
ownerAccountIdString
kindString
reasonString

mediaId

Description UUID of the media object (media.objects.id). Also the envelope's sourceDetails[0].guid.
TypeString
Required Yes
Format uuid

ownerAccountId

Description UUID of the identity account that owns the object (media.objects.owner_account_id).
TypeString
Required Yes
Format uuid

kind

Description Media kind (media.objects.kind), e.g. avatar. Kinds are media-service configuration, so a new kind is not a schema change.
TypeString
Required Yes
Min Length 1

reason

Description owner_request: the owner deleted it. account_deleted: purged with the owner's account (identity.account.deleted).
TypeString
Required Yes
Enum
  • owner_request
  • account_deleted

Schema

{
    "$id": "https://schemas.texecom-prod.com/v2/events/payload/service/media/object/deleted/v1.0.0.json",
    "$schema": "http://json-schema.org/draft-07/schema",
    "title": "Media Object Deleted Payload",
    "description": "Emitted once when a media object is deleted, from any earlier status (pending, ready or rejected). Its files are removed and its signed URLs stop resolving; an owning service holding a reference should drop it.",
    "type": "object",
    "properties": {
        "mediaId": {
            "description": "UUID of the media object (media.objects.id). Also the envelope's sourceDetails[0].guid.",
            "type": "string",
            "format": "uuid"
        },
        "ownerAccountId": {
            "description": "UUID of the identity account that owns the object (media.objects.owner_account_id).",
            "type": "string",
            "format": "uuid"
        },
        "kind": {
            "description": "Media kind (media.objects.kind), e.g. avatar. Kinds are media-service configuration, so a new kind is not a schema change.",
            "type": "string",
            "minLength": 1
        },
        "reason": {
            "description": "owner_request: the owner deleted it. account_deleted: purged with the owner's account (identity.account.deleted).",
            "type": "string",
            "enum": [
                "owner_request",
                "account_deleted"
            ]
        }
    },
    "required": [
        "mediaId",
        "ownerAccountId",
        "kind",
        "reason"
    ],
    "additionalProperties": false
}