{
  "slug": "aws-dynamodb-exporttabletopointintime-supports-export-filters-and-projections-7add1e0c7d24",
  "title": "aws dynamodb ExportTableToPointInTime supports export filters and projections",
  "tools": [
    "aws-cli"
  ],
  "tags": [
    "agent"
  ],
  "introduced_at": "2026-09-30T18:20:39.000Z",
  "announced_at": "2026-09-30T18:20:39.000Z",
  "effective_at": null,
  "date_basis": "source-publication",
  "status": "unknown",
  "how": {
    "incantation": "When exporting selected DynamoDB data, pass the expressions inside `--filter-specification`; the key condition must match one partition key value, and any filter used with it must reference non-key attributes.",
    "examples": [
      "aws dynamodb export-table-to-point-in-time --table-arn <table-arn> --s3-bucket <bucket> --filter-specification '{\"KeyConditionExpression\":\"#pk = :pk\",\"FilterExpression\":\"#status = :status\",\"ProjectionExpression\":\"#pk, #status, #attribute\",\"ExpressionAttributeNames\":{\"#pk\":\"<partition-key-name>\",\"#status\":\"<status-attribute>\",\"#attribute\":\"<projected-attribute>\"},\"ExpressionAttributeValues\":{\":pk\":{\"S\":\"<partition-key-value>\"},\":status\":{\"S\":\"<status-value>\"}}}'"
    ],
    "gotchas": [
      "Version: 2.37.7",
      "--filter-specification: Object containing export filter criteria. Its expression subkeys can be combined in one request.",
      "FilterExpression: Filters exported items; when KeyConditionExpression is omitted, may reference key attributes too.",
      "ProjectionExpression: Names the attributes included in output; separate names with commas.",
      "KeyConditionExpression: Filters by key; requires equality on one partition key and may compare a sort key. When supplied, FilterExpression can reference only non-key attributes.",
      "ExpressionAttributeNames: Map of substitution tokens to attribute names used by expressions.",
      "ExpressionAttributeValues: Map of substitution tokens to DynamoDB attribute values used by expressions.",
      "--table-arn (required): ARN of the table to export.",
      "--s3-bucket (required): Destination S3 bucket name.",
      "Prerequisite: Enable point-in-time recovery (PITR) on the table; export time must be within its configured PITR recovery period.",
      "Prerequisite: IAM permissions must allow `dynamodb:ExportTableToPointInTime`, `s3:AbortMultipartUpload`, `s3:PutObject`, and `s3:PutObjectAcl`. The caller must be in the same AWS account as the source table.",
      "Docs conflict: The accessible AWS CLI reference is for version 2.37.10, newer than the card’s 2.37.7. Its current export command documents these expressions under --filter-specification; version 2.37.7 documentation could not be opened to verify the exact syntax for that version."
    ]
  },
  "why_it_matters": "Export point-in-time table data with selected records or attributes.",
  "sources": [
    "https://github.com/aws/aws-cli/blob/2.37.7/CHANGELOG.rst",
    "https://docs.aws.amazon.com/cli/latest/reference/dynamodb/export-table-to-point-in-time.html",
    "https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/S3DataExport_Requesting.html"
  ],
  "rank": 0.93015,
  "judge": {
    "publish": true,
    "judge_model": "codex-cli/gpt-6-luna+typesafe/jev-1.13.0",
    "prompt_version": "extract-v7+enrich-v1+judge-v2x3+jev-publish-v1"
  },
  "review_state": "approved",
  "provenance": {
    "run_id": "probe-awscli-20261008",
    "verdict_id": "probe-awscli-20261008:probe-awscli-20261008-91f610e982d8a438-0:gate",
    "evidence_hash": "bc9ae9d890c08c81b08d0ca89d0056f9fbef9bca6206de00b4850e8f67e21310"
  },
  "review": {
    "draft_hash": "4e8578ed9f4b7c4d611150119d1c9926a91ca601ba667814a0bab70a3714022a",
    "reviewer": "publication-gate",
    "reviewed_at": "2026-10-07T00:00:00.000Z",
    "decision": "probe-awscli-20261008:gate",
    "reason": "2 of 3 judge runs approved with p_yes >= 0.9 (mean 0.93 >= 0.9; 2 needed) and Jev gave 0.63 (>= 0.6 needed)."
  }
}
