Data Transfer Project: Generic schema for personal data portability

Added on Oct. 22, 2025Managed by Data Transfer Initiative

Payload

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://id.schemas.pub/o/dtinit.org/dtp/payload-schema",
  "title": "Schema for payload wrapper in data-transfer-project generic endpoints",
  "type": "object",
  "properties": {
    "apiVersion": {
      "type": "string"
    },
    "payload": {
      "type": "object",
      "description": "The inner payload, which contains data from one of the described data verticals",
      "minProperties": 1,
      "anyOf": [
        { "$ref": "album-schema" },
        { "$ref": "calendar-schema" },
        { "$ref": "file-schema" },
        { "$ref": "folder-schema" },
        { "$ref": "photo-and-video-schema" },
        { "$ref": "social-posts-schema" }
      ]
    },
    "schemaSource": {
      "type": "string",
      "description": "The source file containing the schema definition"
    },
    "@type": {
      "const": "GenericPayload"
    }
  },
  "required": [
    "@type",
    "schemaSource",
    "apiVersion",
    "payload"
  ]
}

View source