{
  "@context": {
    "@vocab": "https://contentrain.io/schema#",
    "schema": "https://schema.org/",
    "xsd": "http://www.w3.org/2001/XMLSchema#",
    "dcterms": "http://purl.org/dc/terms/",
    "contentrain": "https://contentrain.io/schema#",
    "GetApiCdnV1ProjectidPathResponse": "contentrain:GetApiCdnV1ProjectidPathResponse",
    "GetApiMediaV1ProjectidAssetsResponse": "contentrain:GetApiMediaV1ProjectidAssetsResponse",
    "assets": {
      "@id": "contentrain:assets",
      "@container": "@list"
    },
    "total": {
      "@id": "contentrain:total",
      "@type": "xsd:integer"
    },
    "PostApiMediaV1ProjectidAssetsRequest": "contentrain:PostApiMediaV1ProjectidAssetsRequest",
    "file": {
      "@id": "contentrain:file",
      "@type": "xsd:string"
    },
    "alt": {
      "@id": "contentrain:alt",
      "@type": "xsd:string"
    },
    "tags": {
      "@id": "contentrain:tags",
      "@type": "xsd:string"
    },
    "variants": {
      "@id": "contentrain:variants",
      "@type": "xsd:string"
    },
    "url": {
      "@id": "contentrain:url",
      "@type": "xsd:string"
    },
    "PostApiMediaV1ProjectidAssetsResponse": "contentrain:PostApiMediaV1ProjectidAssetsResponse",
    "id": {
      "@id": "contentrain:id",
      "@type": "xsd:string"
    },
    "filename": {
      "@id": "contentrain:filename",
      "@type": "xsd:string"
    },
    "contentType": {
      "@id": "contentrain:contentType",
      "@type": "xsd:string"
    },
    "size": {
      "@id": "contentrain:size",
      "@type": "xsd:integer"
    },
    "width": {
      "@id": "contentrain:width",
      "@type": "xsd:integer"
    },
    "height": {
      "@id": "contentrain:height",
      "@type": "xsd:integer"
    },
    "format": {
      "@id": "contentrain:format",
      "@type": "xsd:string"
    },
    "blurhash": {
      "@id": "contentrain:blurhash",
      "@type": "xsd:string"
    },
    "originalPath": {
      "@id": "contentrain:originalPath",
      "@type": "xsd:string"
    },
    "createdAt": {
      "@id": "contentrain:createdAt",
      "@type": "xsd:string"
    },
    "variantUrls": {
      "@id": "contentrain:variantUrls"
    },
    "DeleteApiMediaV1ProjectidAssetsAssetidResponse": "contentrain:DeleteApiMediaV1ProjectidAssetsAssetidResponse",
    "deleted": {
      "@id": "contentrain:deleted",
      "@type": "xsd:boolean"
    },
    "GetApiMediaV1ProjectidAssetsAssetidResponse": "contentrain:GetApiMediaV1ProjectidAssetsAssetidResponse",
    "PatchApiMediaV1ProjectidAssetsAssetidRequest": "contentrain:PatchApiMediaV1ProjectidAssetsAssetidRequest",
    "focalPoint": {
      "@id": "contentrain:focalPoint"
    },
    "PatchApiMediaV1ProjectidAssetsAssetidResponse": "contentrain:PatchApiMediaV1ProjectidAssetsAssetidResponse",
    "PostApiMediaV1ProjectidAssetsBulkRequest": "contentrain:PostApiMediaV1ProjectidAssetsBulkRequest",
    "action": {
      "@id": "contentrain:action",
      "@type": "xsd:string"
    },
    "assetIds": {
      "@id": "contentrain:assetIds",
      "@container": "@list"
    },
    "PostApiMediaV1ProjectidAssetsBulkResponse": "contentrain:PostApiMediaV1ProjectidAssetsBulkResponse",
    "affected": {
      "@id": "contentrain:affected",
      "@type": "xsd:integer"
    },
    "PostApiWorkspacesWorkspaceidProjectsProjectidAttachmentsRequ": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidAttachmentsRequ",
    "urls": {
      "@id": "contentrain:urls",
      "@type": "xsd:string"
    },
    "intent": {
      "@id": "contentrain:intent",
      "@type": "xsd:string"
    },
    "PostApiWorkspacesWorkspaceidProjectsProjectidAttachmentsResp": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidAttachmentsResp",
    "attachments": {
      "@id": "contentrain:attachments",
      "@container": "@list"
    },
    "GetApiWorkspacesWorkspaceidProjectsProjectidCdnBuildsRespons": "contentrain:GetApiWorkspacesWorkspaceidProjectsProjectidCdnBuildsRespons",
    "status": {
      "@id": "contentrain:status",
      "@type": "xsd:string"
    },
    "trigger_type": {
      "@id": "contentrain:trigger_type",
      "@type": "xsd:string"
    },
    "commit_sha": {
      "@id": "contentrain:commit_sha",
      "@type": "xsd:string"
    },
    "branch": {
      "@id": "contentrain:branch",
      "@type": "xsd:string"
    },
    "file_count": {
      "@id": "contentrain:file_count",
      "@type": "xsd:integer"
    },
    "total_size_bytes": {
      "@id": "contentrain:total_size_bytes",
      "@type": "xsd:integer"
    },
    "changed_models": {
      "@id": "contentrain:changed_models",
      "@container": "@list"
    },
    "build_duration_ms": {
      "@id": "contentrain:build_duration_ms",
      "@type": "xsd:integer"
    },
    "error_message": {
      "@id": "contentrain:error_message",
      "@type": "xsd:string"
    },
    "started_at": {
      "@id": "contentrain:started_at",
      "@type": "xsd:string"
    },
    "completed_at": {
      "@id": "contentrain:completed_at",
      "@type": "xsd:string"
    },
    "PostApiWorkspacesWorkspaceidProjectsProjectidCdnBuildsTrigge": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidCdnBuildsTrigge",
    "phase": {
      "@id": "contentrain:phase",
      "@type": "xsd:string"
    },
    "message": {
      "@id": "contentrain:message",
      "@type": "xsd:string"
    },
    "current": {
      "@id": "contentrain:current",
      "@type": "xsd:integer"
    },
    "result": {
      "@id": "contentrain:result"
    },
    "GetApiWorkspacesWorkspaceidProjectsProjectidCdnKeysResponse": "contentrain:GetApiWorkspacesWorkspaceidProjectsProjectidCdnKeysResponse",
    "name": {
      "@id": "contentrain:name",
      "@type": "xsd:string"
    },
    "key_prefix": {
      "@id": "contentrain:key_prefix",
      "@type": "xsd:string"
    },
    "environment": {
      "@id": "contentrain:environment",
      "@type": "xsd:string"
    },
    "scopes": {
      "@id": "contentrain:scopes",
      "@container": "@list"
    },
    "rate_limit_per_hour": {
      "@id": "contentrain:rate_limit_per_hour",
      "@type": "xsd:integer"
    },
    "last_used_at": {
      "@id": "contentrain:last_used_at",
      "@type": "xsd:string"
    },
    "expires_at": {
      "@id": "contentrain:expires_at",
      "@type": "xsd:string"
    },
    "created_at": {
      "@id": "contentrain:created_at",
      "@type": "xsd:string"
    },
    "revoked_at": {
      "@id": "contentrain:revoked_at",
      "@type": "xsd:string"
    },
    "PostApiWorkspacesWorkspaceidProjectsProjectidCdnKeysRequest": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidCdnKeysRequest",
    "PostApiWorkspacesWorkspaceidProjectsProjectidCdnKeysResponse": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidCdnKeysResponse",
    "key": {
      "@id": "contentrain:key",
      "@type": "xsd:string"
    },
    "DeleteApiWorkspacesWorkspaceidProjectsProjectidCdnKeysKeyidR": "contentrain:DeleteApiWorkspacesWorkspaceidProjectsProjectidCdnKeysKeyidR",
    "revoked": {
      "@id": "contentrain:revoked",
      "@type": "xsd:boolean"
    },
    "GetApiWorkspacesWorkspaceidProjectsProjectidCdnSettingsRespo": "contentrain:GetApiWorkspacesWorkspaceidProjectsProjectidCdnSettingsRespo",
    "cdn_enabled": {
      "@id": "contentrain:cdn_enabled",
      "@type": "xsd:boolean"
    },
    "cdn_branch": {
      "@id": "contentrain:cdn_branch",
      "@type": "xsd:string"
    },
    "PatchApiWorkspacesWorkspaceidProjectsProjectidCdnSettingsReq": "contentrain:PatchApiWorkspacesWorkspaceidProjectsProjectidCdnSettingsReq",
    "PatchApiWorkspacesWorkspaceidProjectsProjectidCdnSettingsRes": "contentrain:PatchApiWorkspacesWorkspaceidProjectsProjectidCdnSettingsRes",
    "GetApiWorkspacesWorkspaceidProjectsProjectidConversationsRes": "contentrain:GetApiWorkspacesWorkspaceidProjectsProjectidConversationsRes",
    "conversations": {
      "@id": "contentrain:conversations",
      "@container": "@list"
    },
    "DeleteApiWorkspacesWorkspaceidProjectsProjectidConversations": "contentrain:DeleteApiWorkspacesWorkspaceidProjectsProjectidConversations",
    "GetApiWorkspacesWorkspaceidProjectsProjectidConversationsCon": "contentrain:GetApiWorkspacesWorkspaceidProjectsProjectidConversationsCon",
    "messages": {
      "@id": "contentrain:messages",
      "@container": "@list"
    },
    "GetApiWorkspacesWorkspaceidProjectsProjectidFormsModelidSubm": "contentrain:GetApiWorkspacesWorkspaceidProjectsProjectidFormsModelidSubm",
    "submissions": {
      "@id": "contentrain:submissions",
      "@container": "@list"
    },
    "DeleteApiWorkspacesWorkspaceidProjectsProjectidFormsModelidS": "contentrain:DeleteApiWorkspacesWorkspaceidProjectsProjectidFormsModelidS",
    "PatchApiWorkspacesWorkspaceidProjectsProjectidFormsModelidSu": "contentrain:PatchApiWorkspacesWorkspaceidProjectsProjectidFormsModelidSu",
    "PatchApiWorkspacesWorkspaceidProjectsProjectidFormsModelidSu2": "contentrain:PatchApiWorkspacesWorkspaceidProjectsProjectidFormsModelidSu2",
    "model_id": {
      "@id": "contentrain:model_id",
      "@type": "xsd:string"
    },
    "data": {
      "@id": "contentrain:data"
    },
    "source_ip": {
      "@id": "contentrain:source_ip",
      "@type": "xsd:string"
    },
    "entry_id": {
      "@id": "contentrain:entry_id",
      "@type": "xsd:string"
    },
    "PostApiWorkspacesWorkspaceidProjectsProjectidFormsModelidSub": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidFormsModelidSub",
    "submissionIds": {
      "@id": "contentrain:submissionIds",
      "@container": "@list"
    },
    "PostApiWorkspacesWorkspaceidProjectsProjectidFormsModelidSub2": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidFormsModelidSub2",
    "results": {
      "@id": "contentrain:results",
      "@container": "@list"
    },
    "updated": {
      "@id": "contentrain:updated",
      "@type": "xsd:integer"
    },
    "GetApiWorkspacesWorkspaceidProjectsProjectidMediaResponse": "contentrain:GetApiWorkspacesWorkspaceidProjectsProjectidMediaResponse",
    "PostApiWorkspacesWorkspaceidProjectsProjectidMediaRequest": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidMediaRequest",
    "PostApiWorkspacesWorkspaceidProjectsProjectidMediaResponse": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidMediaResponse",
    "DeleteApiWorkspacesWorkspaceidProjectsProjectidMediaAssetidR": "contentrain:DeleteApiWorkspacesWorkspaceidProjectsProjectidMediaAssetidR",
    "GetApiWorkspacesWorkspaceidProjectsProjectidMediaAssetidResp": "contentrain:GetApiWorkspacesWorkspaceidProjectsProjectidMediaAssetidResp",
    "PatchApiWorkspacesWorkspaceidProjectsProjectidMediaAssetidRe": "contentrain:PatchApiWorkspacesWorkspaceidProjectsProjectidMediaAssetidRe",
    "PatchApiWorkspacesWorkspaceidProjectsProjectidMediaAssetidRe2": "contentrain:PatchApiWorkspacesWorkspaceidProjectsProjectidMediaAssetidRe2",
    "PostApiWorkspacesWorkspaceidProjectsProjectidMediaBulkReques": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidMediaBulkReques",
    "PostApiWorkspacesWorkspaceidProjectsProjectidMediaBulkRespon": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidMediaBulkRespon",
    "PostApiWorkspacesWorkspaceidProjectsProjectidMediaBulkIngest": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidMediaBulkIngest",
    "items": {
      "@id": "contentrain:items",
      "@container": "@list"
    },
    "concurrency": {
      "@id": "contentrain:concurrency",
      "@type": "xsd:integer"
    },
    "dedupe": {
      "@id": "contentrain:dedupe",
      "@type": "xsd:boolean"
    },
    "PostApiWorkspacesWorkspaceidProjectsProjectidMediaBulkIngest2": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidMediaBulkIngest2",
    "succeeded": {
      "@id": "contentrain:succeeded",
      "@type": "xsd:integer"
    },
    "failed": {
      "@id": "contentrain:failed",
      "@type": "xsd:integer"
    },
    "deduped": {
      "@id": "contentrain:deduped",
      "@type": "xsd:integer"
    },
    "urlMap": {
      "@id": "contentrain:urlMap"
    },
    "PostApiWorkspacesWorkspaceidProjectsProjectidMediaRehostRequ": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidMediaRehostRequ",
    "from": {
      "@id": "contentrain:from"
    },
    "dryRun": {
      "@id": "contentrain:dryRun",
      "@type": "xsd:boolean"
    },
    "copyAssets": {
      "@id": "contentrain:copyAssets",
      "@type": "xsd:boolean"
    },
    "PostApiWorkspacesWorkspaceidProjectsProjectidMediaUploadUrlR": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidMediaUploadUrlR",
    "PostApiWorkspacesWorkspaceidProjectsProjectidMediaUploadUrlR2": "contentrain:PostApiWorkspacesWorkspaceidProjectsProjectidMediaUploadUrlR2",
    "GetAssetsResponse": "contentrain:GetAssetsResponse",
    "PostAssetsRequest": "contentrain:PostAssetsRequest",
    "PostAssetsResponse": "contentrain:PostAssetsResponse",
    "PostAssetsBulkRequest": "contentrain:PostAssetsBulkRequest",
    "PostAssetsBulkResponse": "contentrain:PostAssetsBulkResponse"
  },
  "@type": "schema:Dataset",
  "schema:name": "Contentrain API JSON-LD context",
  "schema:description": "A JSON-LD @context for the objects Contentrain's own API contract declares: one class per component schema, one property per declared field, typed from the contract. Derived by script (derive-json-ld.py, 2026-11-04) from openapi/_ae-authored/contentrain-io-openapi-generated.yml.",
  "dcterms:created": "2026-11-04",
  "dcterms:source": [
    "openapi/_ae-authored/contentrain-io-openapi-generated.yml"
  ]
}