MCPサーバー

crosstabs

io.github.crosstabs/crosstabs
データ・分析 公開・接続可能 MCP 2025-11-25

このMCPでできること

Imports and analyzes survey data with deterministic crosstabs, filters, weighting, wave comparisons, audit history, and report generation.

analyze_crosstab
Analyze aggregate crosstab
Compute deterministic statistics from a bounded aggregate contingency matrix.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['observed', 'inputSemantics'], 'properties': {'observed': {'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer', 'maximum': 1000000000000, 'minimum': 0}, 'maxItems': 12, 'minItems': 2}, 'maxItems': 12, 'minItems': 2, 'description': 'Rectangular 2×2 to 12×12 matrix of finite, non-negative safe integer frequency counts with a grand total no greater than 1,000,000,000,000.'}, 'weighted': {'type': 'boolean', 'const': False, 'default': False, 'description': 'Must be false. This aggregate contract has no typed frequency or survey-design weight authority.'}, 'rowLabels': {'type': 'array', 'items': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'maxItems': 12, 'minItems': 2}, 'percentage': {'enum': ['column', 'row', 'count'], 'type': 'string', 'default': 'column'}, 'rowVariable': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'columnLabels': {'type': 'array', 'items': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'maxItems': 12, 'minItems': 2}, 'columnVariable': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'inputSemantics': {'type': 'string', 'const': 'integer_frequency_counts', 'description': 'Required caller attestation. Survey-weighted aggregates are not accepted by this public aggregate tool.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['schemaVersion', 'analysisId', 'provenance', 'limitations', 'table', 'statistics', 'warnings', 'evidenceLinks'], 'properties': {'table': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'warnings': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'severity', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'severity': {'enum': ['info', 'warning'], 'type': 'string'}}, 'additionalProperties': False}}, 'analysisId': {'type': 'string'}, 'provenance': {'type': 'object', 'required': ['source', 'inputSemantics', 'calculationEngine', 'calculationVersion', 'projectId', 'projectRevision', 'waveId', 'tableId', 'evidenceId'], 'properties': {'source': {'type': 'string', 'const': 'caller_supplied_aggregate_matrix'}, 'waveId': {'type': 'null'}, 'tableId': {'type': 'null'}, 'projectId': {'type': 'null'}, 'evidenceId': {'type': 'string'}, 'inputSemantics': {'type': 'string', 'const': 'integer_frequency_counts'}, 'projectRevision': {'type': 'null'}, 'calculationEngine': {'type': 'string'}, 'calculationVersion': {'type': 'string'}}, 'additionalProperties': False}, 'statistics': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'limitations': {'type': 'array', 'items': {'type': 'string'}}, 'evidenceLinks': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'title', 'url'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string', 'format': 'uri'}, 'title': {'type': 'string'}}, 'additionalProperties': False}}, 'schemaVersion': {'type': 'string'}}, 'additionalProperties': False}
analyze_survey
Analyze a survey question
Run a governed crosstab for an existing hosted project. This task shortcut uses the same deterministic run_table engine and returns a job to poll with get_job.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'tableId', 'workspaceToken', 'requestId'], 'properties': {'waveId': {'type': 'string', 'minLength': 1}, 'tableId': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this task, reused only when retrying identical inputs.'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
apply_filter
Apply filter
Create and assign an auditable project filter. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$defs': {'__schema0': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string'}}, 'variableName': {'type': 'string', 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'$ref': '#/$defs/__schema0'}, 'minItems': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'$ref': '#/$defs/__schema0'}}, 'additionalProperties': False}]}}, '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'tableIds', 'definition', 'workspaceToken', 'requestId'], 'properties': {'tableIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'minItems': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'definition': {'type': 'object', 'required': ['id', 'name', 'expression'], 'properties': {'id': {'type': 'string', 'minLength': 1}, 'name': {'type': 'string', 'minLength': 1}, 'expression': {'$ref': '#/$defs/__schema0'}}, 'additionalProperties': False}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
apply_raking_weights
Apply reviewed raking weights
Recompute a reviewed weighting fingerprint and atomically save a new sampling-weight column and definition with human approval, warning acknowledgement, revision checks and replay. Does not authorize ordinary or complex-survey inference. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'waveId', 'targets', 'baseWeightId', 'trim', 'tolerance', 'maxIterations', 'previewFingerprint', 'targetVariable', 'weightId', 'weightName', 'tableIds', 'approval', 'acknowledgedWarningCodes', 'idempotencyKey', 'workspaceToken', 'requestId'], 'properties': {'trim': {'anyOf': [{'type': 'object', 'required': ['min', 'max'], 'properties': {'max': {'type': 'number', 'exclusiveMinimum': 0}, 'min': {'type': 'number', 'exclusiveMinimum': 0}}, 'additionalProperties': False}, {'type': 'null'}]}, 'waveId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'targets': {'type': 'array', 'items': {'type': 'object', 'required': ['variable', 'proportions'], 'properties': {'variable': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'proportions': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 1000}, 'additionalProperties': {'type': 'number', 'maximum': 1, 'minimum': 0}}}, 'additionalProperties': False}, 'maxItems': 10, 'minItems': 1}, 'approval': {'type': 'object', 'required': ['approvedBy', 'approvedAt'], 'properties': {'approvedAt': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$'}, 'approvedBy': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, 'tableIds': {'type': 'array', 'items': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'maxItems': 20}, 'weightId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'projectId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'tolerance': {'type': 'number', 'maximum': 0.01, 'minimum': 0}, 'weightName': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'baseWeightId': {'anyOf': [{'type': 'string', 'maxLength': 200, 'minLength': 1}, {'type': 'null'}]}, 'maxIterations': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'targetVariable': {'type': 'object', 'required': ['name', 'label'], 'properties': {'name': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'label': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'previewFingerprint': {'type': 'string', 'pattern': '^sha256:[a-f0-9]{64}$'}, 'acknowledgedWarningCodes': {'type': 'array', 'items': {'type': 'string', 'maxLength': 100, 'minLength': 1}, 'maxItems': 20}}, 'additionalProperties': False}
apply_transformation
Apply transformation
Apply an approved transformation to one workspace wave with recorded human approval and reversible provenance. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'recipeId', 'waveId', 'runId', 'approval', 'workspaceToken', 'requestId'], 'properties': {'runId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'waveId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'approval': {'type': 'object', 'required': ['approvedBy', 'approvedAt'], 'properties': {'approvedAt': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$'}, 'approvedBy': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, 'recipeId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
build_tab_book
Build a survey tab book
Build a reusable tab book for an existing hosted project. This task shortcut uses the same deterministic run_tab_book engine and returns a job to poll with get_job.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'workspaceToken', 'requestId'], 'properties': {'waveId': {'type': 'string', 'minLength': 1}, 'tableIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'minItems': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this task, reused only when retrying identical inputs.'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
compare_survey_waves
Compare survey waves
Compare compatible saved survey waves. This task shortcut uses the same deterministic compare_waves engine and preserves all comparability warnings.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'tableId', 'fromWaveId', 'toWaveId', 'workspaceToken', 'requestId'], 'properties': {'tableId': {'type': 'string', 'minLength': 1}, 'toWaveId': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this task, reused only when retrying identical inputs.'}, 'fromWaveId': {'type': 'string', 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
compare_waves
Compare waves
Compare compatible tables across project waves. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'tableId', 'fromWaveId', 'toWaveId', 'workspaceToken', 'requestId'], 'properties': {'tableId': {'type': 'string', 'minLength': 1}, 'toWaveId': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'fromWaveId': {'type': 'string', 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
create_analysis_plan
Create analysis plan
Create a portable revision-bound document for explicitly selected saved tables without mutating the project. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'tableIds', 'workspaceToken', 'requestId'], 'properties': {'name': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'waveId': {'type': 'string', 'minLength': 1}, 'tableIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'maxItems': 20, 'minItems': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
create_editable_report
Create an editable report
Generate an editable PPTX or DOCX report pack from an existing hosted project. Use get_download_link on the returned artifact ID after the job succeeds.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'format', 'workspaceToken', 'requestId'], 'properties': {'format': {'enum': ['pptx', 'docx'], 'type': 'string'}, 'waveId': {'type': 'string', 'minLength': 1}, 'tableIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'minItems': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this task, reused only when retrying identical inputs.'}, 'templateId': {'type': 'string', 'minLength': 1}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
create_project
Create project
Create an empty, versioned research project. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['name', 'idempotencyKey', 'workspaceToken', 'requestId'], 'properties': {'name': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
create_workspace
Create a private temporary workspace without signing in. Explain that uploads leave the device, then obtain consent. The secret token is the sole access credential and cannot be recovered.
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['consentToUpload'], 'properties': {'consentToUpload': {'type': 'boolean', 'const': True}}}
define_banner
Define banner
Create or replace a reusable multilevel banner. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'tableIds', 'definition', 'workspaceToken', 'requestId'], 'properties': {'tableIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'minItems': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'definition': {'type': 'object', 'required': ['id', 'name', 'levels'], 'properties': {'id': {'type': 'string', 'minLength': 1}, 'name': {'type': 'string', 'minLength': 1}, 'levels': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'label', 'variableNames'], 'properties': {'id': {'type': 'string', 'minLength': 1}, 'label': {'type': 'string', 'minLength': 1}, 'filterId': {'anyOf': [{'type': 'string', 'minLength': 1}, {'type': 'null'}], 'default': None}, 'variableNames': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'minItems': 1}}, 'additionalProperties': False}, 'minItems': 1}, 'categoryOrder': {'type': 'object', 'default': {}, 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'array', 'items': {'type': 'string'}}}}, 'additionalProperties': False}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
define_row_set
Define row set
Create or replace a reusable ordered row-variable set, with an optional cases-or-responses denominator for one detected multi-select question. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'tableIds', 'definition', 'workspaceToken', 'requestId'], 'properties': {'tableIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'minItems': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'definition': {'type': 'object', 'required': ['id', 'name', 'variableNames'], 'properties': {'id': {'type': 'string', 'minLength': 1}, 'name': {'type': 'string', 'minLength': 1}, 'categoryOrder': {'type': 'object', 'default': {}, 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'array', 'items': {'type': 'string'}}}, 'variableNames': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'minItems': 1}}, 'additionalProperties': False}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'multipleResponseDenominator': {'enum': ['cases', 'responses'], 'type': 'string', 'description': 'Optional display denominator for an assigned row set that names exactly one detected multi-select question.'}}, 'additionalProperties': False}
define_survey_design
Define survey design
Create an approved immutable Taylor or replicate-weight survey design, or assign an identical existing design, atomically across selected tables. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'tableIds', 'definition', 'approval', 'workspaceToken', 'requestId'], 'properties': {'approval': {'type': 'object', 'required': ['approvedBy', 'approvedAt'], 'properties': {'approvedAt': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$'}, 'approvedBy': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, 'tableIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'minItems': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'definition': {'type': 'object', 'required': ['id', 'name', 'weightVariable', 'strataVariable', 'psuVariable', 'fpcVariable', 'fpcMode', 'lonelyPsuPolicy', 'confidenceLevel', 'varianceEstimator', 'notes'], 'properties': {'id': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'name': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'notes': {'type': 'string', 'maxLength': 10000}, 'fpcMode': {'enum': ['population_psus', 'sampling_fraction'], 'type': 'string'}, 'fpcVariable': {'anyOf': [{'type': 'string', 'maxLength': 1000, 'minLength': 1}, {'type': 'null'}]}, 'psuVariable': {'anyOf': [{'type': 'string', 'maxLength': 1000, 'minLength': 1}, {'type': 'null'}]}, 'strataVariable': {'anyOf': [{'type': 'string', 'maxLength': 1000, 'minLength': 1}, {'type': 'null'}]}, 'weightVariable': {'anyOf': [{'type': 'string', 'maxLength': 1000, 'minLength': 1}, {'type': 'null'}]}, 'confidenceLevel': {'anyOf': [{'type': 'number', 'const': 0.9}, {'type': 'number', 'const': 0.95}, {'type': 'number', 'const': 0.99}]}, 'lonelyPsuPolicy': {'enum': ['fail', 'certainty', 'adjust', 'average'], 'type': 'string'}, 'replicateWeights': {'anyOf': [{'type': 'object', 'required': ['variableNames', 'type', 'scale', 'rscales', 'mse', 'degreesOfFreedom', 'fayRho', 'combinedWeights'], 'properties': {'mse': {'type': 'boolean'}, 'type': {'enum': ['brr', 'fay_brr', 'jackknife', 'bootstrap', 'sdr', 'custom'], 'type': 'string'}, 'scale': {'type': 'number', 'exclusiveMinimum': 0}, 'fayRho': {'anyOf': [{'type': 'number', 'maximum': 0.9999999999999999, 'minimum': 0}, {'type': 'null'}]}, 'rscales': {'type': 'array', 'items': {'type': 'number', 'exclusiveMinimum': 0}, 'maxItems': 1000, 'minItems': 2}, 'variableNames': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'maxItems': 1000, 'minItems': 2}, 'combinedWeights': {'type': 'boolean', 'const': True}, 'degreesOfFreedom': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}, {'type': 'null'}]}, 'varianceEstimator': {'enum': ['taylor_linearization', 'replicate_weights'], 'type': 'string'}}, 'additionalProperties': False}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
delete_workspace
Permanently delete the temporary workspace and all active project, file and job data. This revokes its token.
破壊的操作あり 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceToken', 'confirmDelete'], 'properties': {'confirmDelete': {'type': 'boolean', 'const': True}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}}
detect_schema_drift
Detect schema drift
Inspect wave compatibility and propose repairs without mutation. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'uploadId', 'workspaceToken', 'requestId'], 'properties': {'renames': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string'}}, 'uploadId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'ID of a file uploaded into this workspace. Local paths and arbitrary URLs are not accepted.'}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
export_project
Export project
Export a definition-only package by default or an explicit full-data package to the temporary hosted workspace. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'workspaceToken', 'requestId'], 'properties': {'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'dataPolicy': {'enum': ['omitted', 'included'], 'type': 'string', 'default': 'omitted'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
fetch
Fetch Crosstabs evidence
Fetch one fixed Crosstabs evidence record by identifier.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id'], 'properties': {'id': {'type': 'string', 'maxLength': 160, 'minLength': 1}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id', 'title', 'text', 'url', 'metadata'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string', 'format': 'uri'}, 'text': {'type': 'string'}, 'title': {'type': 'string'}, 'metadata': {'type': 'object', 'required': ['locale', 'cluster', 'evidenceUrls'], 'properties': {'locale': {'type': 'string'}, 'cluster': {'type': 'string'}, 'evidenceUrls': {'type': 'array', 'items': {'type': 'string', 'format': 'uri'}}}, 'additionalProperties': False}}, 'additionalProperties': False}
generate_report_pack
Generate report pack
Generate an editable evidence-linked PPTX or DOCX pack. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'format', 'workspaceToken', 'requestId'], 'properties': {'format': {'enum': ['pptx', 'docx'], 'type': 'string'}, 'waveId': {'type': 'string', 'minLength': 1}, 'tableIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'minItems': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'templateId': {'type': 'string', 'minLength': 1}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
get_audit_history
Get audit history
Return paginated append-only project audit events. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'workspaceToken', 'requestId'], 'properties': {'limit': {'type': 'integer', 'maximum': 500, 'minimum': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'afterSequence': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
get_download_link
Create a private browser download link for an uploaded file or generated artifact in this workspace. The link contains a secret in its fragment; never share it publicly.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceToken', 'fileId'], 'properties': {'fileId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}}
get_headless_capabilities
Describe the full accountless hosted MCP, privacy, retention and execution limits.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
get_job
Read a queued analysis job. Wait at least two seconds between polls. Only succeeded jobs contain completed results; failed jobs contain an error. Use get_download_link for artifact IDs, or get_rendered_table for completed render_project_table jobs.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceToken', 'jobId'], 'properties': {'jobId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}}
get_rendered_table
Render the canonical aggregate result of a succeeded render_project_table job. Respondent rows are never included in the widget.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceToken', 'jobId'], 'properties': {'jobId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}}
get_runtime_status
Inspect this hosted runtime and its fixed resource limits.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
get_started
Get client-specific connection guidance, a health check, and the first prompt to try. No account, workspace, or upload is required.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'client': {'enum': ['ChatGPT', 'Claude', 'Codex', 'Cursor', 'Other'], 'type': 'string'}}}
get_workspace
List this temporary workspace's files, recent jobs and expiry. Includes a private upload link.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceToken'], 'properties': {'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}}
import_dataset
Import dataset
Validate and import respondent records into a project wave. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'uploadId', 'workspaceToken', 'requestId'], 'properties': {'uploadId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'ID of a file uploaded into this workspace. Local paths and arbitrary URLs are not accepted.'}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
import_project
Import project
Verify and import a full-data Crosstabs project package as a new workspace copy. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['idempotencyKey', 'uploadId', 'workspaceToken', 'requestId'], 'properties': {'uploadId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'ID of a file uploaded into this workspace. Local paths and arbitrary URLs are not accepted.'}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'idempotencyKey': {'type': 'string', 'maxLength': 180, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
inspect_project
Inspect project
Inspect a redacted workspace project graph, capabilities and current revision. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'workspaceToken', 'requestId'], 'properties': {'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
list_projects
List projects
List redacted summaries from the workspace project store. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['workspaceToken', 'requestId'], 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1}, 'cursor': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
preview_raking_weights
Preview raking weights
Preview explicit population margins against the saved active wave. Returns aggregate balance, trimming and effective-base diagnostics with a revision-bound review fingerprint; respondent weights remain in the temporary hosted workspace. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'waveId', 'targets', 'baseWeightId', 'trim', 'tolerance', 'maxIterations', 'workspaceToken', 'requestId'], 'properties': {'trim': {'anyOf': [{'type': 'object', 'required': ['min', 'max'], 'properties': {'max': {'type': 'number', 'exclusiveMinimum': 0}, 'min': {'type': 'number', 'exclusiveMinimum': 0}}, 'additionalProperties': False}, {'type': 'null'}]}, 'waveId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'targets': {'type': 'array', 'items': {'type': 'object', 'required': ['variable', 'proportions'], 'properties': {'variable': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'proportions': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 1000}, 'additionalProperties': {'type': 'number', 'maximum': 1, 'minimum': 0}}}, 'additionalProperties': False}, 'maxItems': 10, 'minItems': 1}, 'projectId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'tolerance': {'type': 'number', 'maximum': 0.01, 'minimum': 0}, 'baseWeightId': {'anyOf': [{'type': 'string', 'maxLength': 200, 'minLength': 1}, {'type': 'null'}]}, 'maxIterations': {'type': 'integer', 'maximum': 1000, 'minimum': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
profile_dataset
Profile dataset
Return bounded types, missingness and cardinality diagnostics. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'workspaceToken', 'requestId'], 'properties': {'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
propose_transformation
Propose transformation
Create a draft, data-free transformation recipe for later review. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'definition', 'workspaceToken', 'requestId'], 'properties': {'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'definition': {'type': 'object', 'required': ['id', 'name', 'targetVariable', 'rule'], 'properties': {'id': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'name': {'type': 'string', 'maxLength': 160, 'minLength': 1}, 'rule': {'oneOf': [{'type': 'object', 'required': ['kind', 'sourceVariable', 'minimumCount', 'otherLabel'], 'properties': {'kind': {'type': 'string', 'const': 'group_rare'}, 'otherLabel': {'type': 'string', 'maxLength': 10000, 'minLength': 1}, 'minimumCount': {'type': 'integer', 'maximum': 1000000, 'exclusiveMinimum': 0}, 'sourceVariable': {'type': 'string', 'maxLength': 1000, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'sourceVariable', 'topValues', 'bottomValues', 'middleLabel'], 'properties': {'kind': {'type': 'string', 'const': 'box_score'}, 'topValues': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 10000}, 'middleLabel': {'type': 'string', 'maxLength': 10000, 'minLength': 1}, 'bottomValues': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 10000}, 'sourceVariable': {'type': 'string', 'maxLength': 1000, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'sourceVariable', 'mapping', 'otherwise'], 'properties': {'kind': {'type': 'string', 'const': 'recode_values'}, 'mapping': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 1000}, 'additionalProperties': {'type': 'string', 'maxLength': 10000}}, 'otherwise': {'enum': ['copy', 'missing'], 'type': 'string'}, 'sourceVariable': {'type': 'string', 'maxLength': 1000, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'sourceVariable', 'upperBounds', 'labels'], 'properties': {'kind': {'type': 'string', 'const': 'numeric_bands'}, 'labels': {'type': 'array', 'items': {'type': 'string', 'maxLength': 10000, 'minLength': 1}, 'maxItems': 501}, 'upperBounds': {'type': 'array', 'items': {'type': 'number'}, 'maxItems': 500}, 'sourceVariable': {'type': 'string', 'maxLength': 1000, 'minLength': 1}}, 'additionalProperties': False}]}, 'targetVariable': {'type': 'object', 'required': ['name', 'label', 'metadata'], 'properties': {'name': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'label': {'type': 'string', 'maxLength': 10000, 'minLength': 1}, 'metadata': {'type': 'object', 'required': ['measurementLevel', 'role', 'valueLabels', 'userMissingValues', 'format', 'notes'], 'properties': {'role': {'enum': ['input', 'target', 'both', 'none', 'partition', 'split', 'weight', 'identifier'], 'type': 'string'}, 'notes': {'type': 'string', 'maxLength': 10000}, 'format': {'type': 'object', 'required': ['width', 'decimals', 'alignment'], 'properties': {'width': {'type': 'integer', 'maximum': 10000, 'minimum': 1}, 'decimals': {'type': 'integer', 'maximum': 100, 'minimum': 0}, 'alignment': {'enum': ['left', 'center', 'right'], 'type': 'string'}}, 'additionalProperties': False}, 'valueLabels': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 1000}, 'additionalProperties': {'type': 'string', 'maxLength': 10000}}, 'measurementLevel': {'enum': ['nominal', 'ordinal', 'scale', 'date'], 'type': 'string'}, 'userMissingValues': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 10000}}, 'additionalProperties': False}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
refresh_report_pack
Refresh report pack
Refresh generated regions while preserving declared manual regions. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'generationId', 'approval', 'uploadId', 'workspaceToken', 'requestId'], 'properties': {'waveId': {'type': 'string', 'minLength': 1}, 'approval': {'type': 'object', 'required': ['approvedBy', 'approvedAt'], 'properties': {'approvedAt': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$'}, 'approvedBy': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, 'uploadId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'ID of a file uploaded into this workspace. Local paths and arbitrary URLs are not accepted.'}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'generationId': {'type': 'string', 'minLength': 1}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
render_crosstab
Render aggregate crosstab
Render a deterministic evidence-linked aggregate crosstab widget.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['observed', 'inputSemantics'], 'properties': {'observed': {'type': 'array', 'items': {'type': 'array', 'items': {'type': 'integer', 'maximum': 1000000000000, 'minimum': 0}, 'maxItems': 12, 'minItems': 2}, 'maxItems': 12, 'minItems': 2, 'description': 'Rectangular 2×2 to 12×12 matrix of finite, non-negative safe integer frequency counts with a grand total no greater than 1,000,000,000,000.'}, 'weighted': {'type': 'boolean', 'const': False, 'default': False, 'description': 'Must be false. This aggregate contract has no typed frequency or survey-design weight authority.'}, 'rowLabels': {'type': 'array', 'items': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'maxItems': 12, 'minItems': 2}, 'percentage': {'enum': ['column', 'row', 'count'], 'type': 'string', 'default': 'column'}, 'rowVariable': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'columnLabels': {'type': 'array', 'items': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'maxItems': 12, 'minItems': 2}, 'columnVariable': {'type': 'string', 'maxLength': 120, 'minLength': 1}, 'inputSemantics': {'type': 'string', 'const': 'integer_frequency_counts', 'description': 'Required caller attestation. Survey-weighted aggregates are not accepted by this public aggregate tool.'}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['schemaVersion', 'analysisId', 'provenance', 'limitations', 'table', 'statistics', 'warnings', 'evidenceLinks'], 'properties': {'table': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'warnings': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'severity', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'severity': {'enum': ['info', 'warning'], 'type': 'string'}}, 'additionalProperties': False}}, 'analysisId': {'type': 'string'}, 'provenance': {'type': 'object', 'required': ['source', 'inputSemantics', 'calculationEngine', 'calculationVersion', 'projectId', 'projectRevision', 'waveId', 'tableId', 'evidenceId'], 'properties': {'source': {'type': 'string', 'const': 'caller_supplied_aggregate_matrix'}, 'waveId': {'type': 'null'}, 'tableId': {'type': 'null'}, 'projectId': {'type': 'null'}, 'evidenceId': {'type': 'string'}, 'inputSemantics': {'type': 'string', 'const': 'integer_frequency_counts'}, 'projectRevision': {'type': 'null'}, 'calculationEngine': {'type': 'string'}, 'calculationVersion': {'type': 'string'}}, 'additionalProperties': False}, 'statistics': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}, 'limitations': {'type': 'array', 'items': {'type': 'string'}}, 'evidenceLinks': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'title', 'url'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string', 'format': 'uri'}, 'title': {'type': 'string'}}, 'additionalProperties': False}}, 'schemaVersion': {'type': 'string'}}, 'additionalProperties': False}
render_project_table
Render project table
Render one revision-bound saved table execution through the canonical workspace evidence widget. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'tableId', 'expectedRevision', 'evidenceId', 'workspaceToken', 'requestId'], 'properties': {'waveId': {'type': 'string', 'minLength': 1}, 'tableId': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'evidenceId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
repair_schema
Repair schema
Apply an approved, reversible schema repair plan. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'planId', 'waveId', 'label', 'approvedOperationIds', 'approval', 'uploadId', 'workspaceToken', 'requestId'], 'properties': {'label': {'type': 'string', 'minLength': 1}, 'planId': {'type': 'string', 'minLength': 1}, 'waveId': {'type': 'string', 'minLength': 1}, 'renames': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string'}}, 'approval': {'type': 'object', 'required': ['approvedBy', 'approvedAt'], 'properties': {'approvedAt': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$'}, 'approvedBy': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, 'uploadId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'ID of a file uploaded into this workspace. Local paths and arbitrary URLs are not accepted.'}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'labelAliases': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'array', 'items': {'type': 'string'}}}, 'valueRecodes': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string'}}}, 'categoryOrders': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'array', 'items': {'type': 'string'}}}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'typeConversions': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'object', 'required': ['to', 'strategy'], 'properties': {'to': {'enum': ['categorical', 'numeric', 'date'], 'type': 'string'}, 'strategy': {'enum': ['stringify', 'parse_number'], 'type': 'string'}}, 'additionalProperties': False}}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'approvedOperationIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}}}, 'additionalProperties': False}
replace_dataset
Replace dataset
Import a replacement wave without overwriting prior source data. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'waveId', 'label', 'approval', 'uploadId', 'workspaceToken', 'requestId'], 'properties': {'label': {'type': 'string', 'minLength': 1}, 'waveId': {'type': 'string', 'minLength': 1}, 'renames': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string'}}, 'approval': {'type': 'object', 'required': ['approvedBy', 'approvedAt'], 'properties': {'approvedAt': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$'}, 'approvedBy': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, 'uploadId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'ID of a file uploaded into this workspace. Local paths and arbitrary URLs are not accepted.'}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
review_transformation
Review transformation
Approve or reject a draft transformation recipe with recorded human approval. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'recipeId', 'decision', 'note', 'approval', 'workspaceToken', 'requestId'], 'properties': {'note': {'type': 'string', 'maxLength': 10000}, 'approval': {'type': 'object', 'required': ['approvedBy', 'approvedAt'], 'properties': {'approvedAt': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$'}, 'approvedBy': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, 'decision': {'enum': ['approved', 'rejected'], 'type': 'string'}, 'recipeId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
run_analysis_plan
Run analysis plan
Validate and execute a portable plan against one loaded project revision, returning aggregate evidence and review findings. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'plan', 'workspaceToken', 'requestId'], 'properties': {'plan': {'type': 'object', 'required': ['format', 'version', 'name', 'projectId', 'projectRevision', 'waveId', 'waveSchemaFingerprint', 'dataFingerprint', 'tables'], 'properties': {'name': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'format': {'type': 'string', 'const': 'crosstabs-analysis-plan'}, 'tables': {'type': 'array', 'items': {'type': 'object', 'required': ['tableId', 'tableRevision', 'title', 'rowSetId', 'multiBannerId', 'filterId', 'weightId', 'testProfileId', 'missingMode', 'baseScope', 'multipleResponseDenominator', 'weightSemanticKind', 'weight', 'filters', 'tests', 'semanticsFingerprint'], 'properties': {'tests': {'anyOf': [{'type': 'object', 'required': ['profileId', 'confidenceLevels', 'strictAlpha', 'looseAlpha', 'correction', 'minimumBase', 'effectiveBase', 'display', 'exactInference'], 'properties': {'display': {'enum': ['letters', 'arrows', 'color', 'off'], 'type': 'string'}, 'profileId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'correction': {'enum': ['bonferroni', 'holm', 'benjamini_hochberg', 'none'], 'type': 'string'}, 'looseAlpha': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'minimumBase': {'type': 'integer', 'maximum': 1000000000, 'minimum': 0}, 'strictAlpha': {'type': 'number', 'maximum': 1, 'minimum': 0}, 'effectiveBase': {'enum': ['unweighted', 'weighted'], 'type': 'string'}, 'exactInference': {'type': 'object', 'required': ['method', 'iterations', 'seed'], 'properties': {'seed': {'type': 'integer', 'maximum': 4294967295, 'minimum': 0}, 'method': {'enum': ['asymptotic', 'monte_carlo_fixed_margins'], 'type': 'string'}, 'iterations': {'type': 'integer', 'maximum': 100000, 'minimum': 1000}}, 'additionalProperties': False}, 'confidenceLevels': {'type': 'array', 'items': {'anyOf': [{'type': 'number', 'const': 0.9}, {'type': 'number', 'const': 0.95}, {'type': 'number', 'const': 0.99}]}, 'maxItems': 2, 'minItems': 1}}, 'additionalProperties': False}, {'type': 'null'}]}, 'title': {'type': 'string', 'maxLength': 1000}, 'weight': {'anyOf': [{'type': 'object', 'required': ['source', 'invalidValues'], 'properties': {'source': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'invalidValues': {'enum': ['exclude', 'zero'], 'type': 'string'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'filters': {'type': 'array', 'items': {'type': 'object', 'required': ['filterId', 'scope', 'bannerLevelId', 'expression'], 'properties': {'scope': {'enum': ['table', 'banner'], 'type': 'string'}, 'filterId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'expression': {'anyOf': [{'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expressions'], 'properties': {'kind': {'enum': ['and', 'or'], 'type': 'string'}, 'expressions': {'type': 'array', 'items': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}, 'maxItems': 20}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'expression'], 'properties': {'kind': {'type': 'string', 'const': 'not'}, 'expression': {'anyOf': [{'type': 'object', 'required': ['kind', 'variableName', 'values'], 'properties': {'kind': {'type': 'string', 'const': 'include'}, 'values': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 1000}, 'variableName': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}}, 'additionalProperties': False}]}, {'type': 'null'}]}, 'bannerLevelId': {'anyOf': [{'type': 'string', 'maxLength': 200, 'minLength': 1}, {'type': 'null'}]}}, 'additionalProperties': False}, 'maxItems': 101}, 'tableId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'filterId': {'anyOf': [{'type': 'string', 'maxLength': 200, 'minLength': 1}, {'type': 'null'}]}, 'rowSetId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'weightId': {'anyOf': [{'type': 'string', 'maxLength': 200, 'minLength': 1}, {'type': 'null'}]}, 'baseScope': {'enum': ['valid', 'all_rows'], 'type': 'string'}, 'missingMode': {'enum': ['exclude', 'include'], 'type': 'string'}, 'multiBannerId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'tableRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'testProfileId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'weightSemanticKind': {'anyOf': [{'enum': ['unspecified', 'frequency', 'sampling', 'calibration', 'analytic'], 'type': 'string'}, {'type': 'null'}]}, 'semanticsFingerprint': {'type': 'string', 'pattern': '^sha256:[a-f0-9]{64}$'}, 'multipleResponseDenominator': {'enum': ['cases', 'responses'], 'type': 'string'}}, 'additionalProperties': False}, 'maxItems': 20, 'minItems': 1}, 'waveId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'version': {'type': 'number', 'const': 1}, 'projectId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'dataFingerprint': {'type': 'string', 'pattern': '^sha256:[a-f0-9]{64}$'}, 'projectRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}, 'waveSchemaFingerprint': {'type': 'string', 'pattern': '^schema-[a-f0-9]{8}$'}}, 'additionalProperties': False}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
run_complex_survey_method
Run complex-survey method
Run a declared-design OLS, logistic, or K-means method and record bounded canonical evidence. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'method', 'waveId', 'surveyDesignId', 'workspaceToken', 'requestId'], 'properties': {'seed': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'method': {'enum': ['ols', 'logistic', 'kmeans'], 'type': 'string'}, 'waveId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'outcome': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'clusters': {'type': 'integer', 'maximum': 12, 'minimum': 2}, 'filterId': {'anyOf': [{'type': 'string', 'maxLength': 200, 'minLength': 1}, {'type': 'null'}]}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'variables': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'maxItems': 40, 'minItems': 1}, 'eventValue': {'anyOf': [{'type': 'string', 'maxLength': 1000, 'minLength': 1}, {'type': 'number'}, {'type': 'boolean'}]}, 'predictors': {'type': 'array', 'items': {'anyOf': [{'type': 'string', 'maxLength': 1000, 'minLength': 1}, {'type': 'object', 'required': ['kind', 'variable'], 'properties': {'kind': {'type': 'string', 'const': 'numeric'}, 'variable': {'type': 'string', 'maxLength': 1000, 'minLength': 1}}, 'additionalProperties': False}, {'type': 'object', 'required': ['kind', 'variable', 'ordered', 'levels', 'reference'], 'properties': {'kind': {'type': 'string', 'const': 'categorical'}, 'levels': {'type': 'array', 'items': {'anyOf': [{'type': 'string', 'maxLength': 1000, 'minLength': 1}, {'type': 'number'}, {'type': 'boolean'}]}, 'maxItems': 500, 'minItems': 2}, 'ordered': {'type': 'boolean'}, 'variable': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'reference': {'anyOf': [{'type': 'string', 'maxLength': 1000, 'minLength': 1}, {'type': 'number'}, {'type': 'boolean'}]}}, 'additionalProperties': False}]}, 'maxItems': 40, 'minItems': 1}, 'missingPolicy': {'enum': ['listwise', 'fail'], 'type': 'string'}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'referenceValue': {'anyOf': [{'type': 'string', 'maxLength': 1000, 'minLength': 1}, {'type': 'number'}, {'type': 'boolean'}]}, 'surveyDesignId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
run_demo_analysis
Run an instant, upload-free tour using a fixed synthetic survey table. Returns an AI-ready answer, numbers, interpretation, warnings and next action.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {}}
run_tab_book
Run tab book
Compute the selected tab-book recipe with progress and cancellation. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'workspaceToken', 'requestId'], 'properties': {'waveId': {'type': 'string', 'minLength': 1}, 'tableIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'minItems': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
run_table
Run table
Compute one crosstab with diagnostics and evidence metadata. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'tableId', 'workspaceToken', 'requestId'], 'properties': {'waveId': {'type': 'string', 'minLength': 1}, 'tableId': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
search
Search Crosstabs methodology
Discover fixed Crosstabs methodology, limitations, and evidence pages.
読み取り専用 冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['query'], 'properties': {'query': {'type': 'string', 'maxLength': 500, 'minLength': 1}}}
出力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'title', 'url'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string', 'format': 'uri'}, 'title': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
set_weight
Set weight
Create and assign a validated weighting definition. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'tableIds', 'definition', 'approval', 'workspaceToken', 'requestId'], 'properties': {'approval': {'type': 'object', 'required': ['approvedBy', 'approvedAt'], 'properties': {'approvedAt': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$'}, 'approvedBy': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, 'tableIds': {'type': 'array', 'items': {'type': 'string', 'minLength': 1}, 'minItems': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'definition': {'type': 'object', 'required': ['id', 'name', 'variableName', 'invalidValues'], 'properties': {'id': {'type': 'string', 'minLength': 1}, 'name': {'type': 'string', 'minLength': 1}, 'semanticKind': {'enum': ['unspecified', 'frequency', 'sampling', 'calibration', 'analytic'], 'type': 'string', 'default': 'unspecified'}, 'variableName': {'type': 'string', 'minLength': 1}, 'invalidValues': {'enum': ['exclude', 'zero'], 'type': 'string'}}, 'additionalProperties': False}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
undo_change
Undo change
Reverse a recorded reversible project mutation. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'targetEventId', 'workspaceToken', 'requestId'], 'properties': {'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'targetEventId': {'type': 'string', 'minLength': 1}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
undo_transformation
Undo transformation
Mark one applied transformation run undone and restore its derived variable in this workspace. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'runId', 'workspaceToken', 'requestId'], 'properties': {'runId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
update_variable_metadata
Update variable metadata
Apply an approved label, coding, missing-value, measurement, role, and display-format update without rewriting respondent rows. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields.
冪等
入力スキーマ
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'expectedRevision', 'idempotencyKey', 'waveId', 'variableName', 'label', 'metadata', 'approval', 'workspaceToken', 'requestId'], 'properties': {'label': {'type': 'string', 'maxLength': 10000, 'minLength': 1}, 'waveId': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'approval': {'type': 'object', 'required': ['approvedBy', 'approvedAt'], 'properties': {'approvedAt': {'type': 'string', 'format': 'date-time', 'pattern': '^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$'}, 'approvedBy': {'type': 'string', 'maxLength': 200, 'minLength': 1}}, 'additionalProperties': False}, 'metadata': {'type': 'object', 'required': ['measurementLevel', 'role', 'valueLabels', 'userMissingValues', 'format', 'notes'], 'properties': {'role': {'enum': ['input', 'target', 'both', 'none', 'partition', 'split', 'weight', 'identifier'], 'type': 'string'}, 'notes': {'type': 'string', 'maxLength': 10000}, 'format': {'type': 'object', 'required': ['width', 'decimals', 'alignment'], 'properties': {'width': {'type': 'integer', 'maximum': 10000, 'minimum': 1}, 'decimals': {'type': 'integer', 'maximum': 100, 'minimum': 0}, 'alignment': {'enum': ['left', 'center', 'right'], 'type': 'string'}}, 'additionalProperties': False}, 'valueLabels': {'type': 'object', 'propertyNames': {'type': 'string', 'maxLength': 1000}, 'additionalProperties': {'type': 'string', 'maxLength': 10000}}, 'measurementLevel': {'enum': ['nominal', 'ordinal', 'scale', 'date'], 'type': 'string'}, 'userMissingValues': {'type': 'array', 'items': {'type': 'string', 'maxLength': 1000}, 'maxItems': 10000}}, 'additionalProperties': False}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'variableName': {'type': 'string', 'maxLength': 1000, 'minLength': 1}, 'idempotencyKey': {'type': 'string', 'maxLength': 200, 'minLength': 1}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}, 'expectedRevision': {'type': 'integer', 'maximum': 9007199254740991, 'exclusiveMinimum': 0}}, 'additionalProperties': False}
validate_analysis_plan
Validate analysis plan
Preflight a portable analysis plan against the current workspace project and return actionable validation issues. Queues a hosted job; use get_job to retrieve its result.
冪等
入力スキーマ
{'type': 'object', '$defs': {'__schema0': {'anyOf': [{'type': 'string'}, {'type': 'number'}, {'type': 'boolean'}, {'type': 'null'}, {'type': 'array', 'items': {'$ref': '#/$defs/__schema0'}}, {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'$ref': '#/$defs/__schema0'}}]}}, '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['projectId', 'plan', 'workspaceToken', 'requestId'], 'properties': {'plan': {'$ref': '#/$defs/__schema0'}, 'projectId': {'type': 'string', 'minLength': 1}, 'requestId': {'type': 'string', 'format': 'uuid', 'pattern': '^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$', 'description': 'A new UUID for this job, reused only when retrying identical inputs.'}, 'workspaceToken': {'type': 'string', 'pattern': '^ctw_[a-f0-9-]{36}\\.[A-Za-z0-9_-]{43}$', 'description': 'Secret workspace capability returned by create_workspace. Treat as a password; never place in a query string.'}}, 'additionalProperties': False}
追加
define_survey_design
2026年9月17日12:41
追加
get_audit_history
2026年9月17日12:41
追加
inspect_project
2026年9月17日12:41
追加
list_projects
2026年9月17日12:41
追加
export_project
2026年9月17日12:41
追加
refresh_report_pack
2026年9月17日12:41
追加
generate_report_pack
2026年9月17日12:41
追加
repair_schema
2026年9月17日12:41
追加
detect_schema_drift
2026年9月17日12:41
追加
replace_dataset
2026年9月17日12:41
追加
undo_change
2026年9月17日12:41
追加
compare_waves
2026年9月17日12:41
追加
run_tab_book
2026年9月17日12:41
追加
run_complex_survey_method
2026年9月17日12:41
追加
undo_transformation
2026年9月17日12:41
追加
apply_transformation
2026年9月17日12:41
追加
review_transformation
2026年9月17日12:41
追加
propose_transformation
2026年9月17日12:41
追加
update_variable_metadata
2026年9月17日12:41
追加
render_project_table
2026年9月17日12:41
追加
run_table
2026年9月17日12:41
追加
set_weight
2026年9月17日12:41
追加
apply_filter
2026年9月17日12:41
追加
define_banner
2026年9月17日12:41
追加
define_row_set
2026年9月17日12:41
追加
profile_dataset
2026年9月17日12:41
追加
import_dataset
2026年9月17日12:41
追加
import_project
2026年9月17日12:41
追加
create_project
2026年9月17日12:41
追加
apply_raking_weights
2026年9月17日12:41