> ## Documentation Index
> Fetch the complete documentation index at: https://documents.trocco.io/llms.txt
> Use this file to discover all available pages before exploring further.
# dbtジョブ設定作成
> dbtジョブ設定を作成します。
## OpenAPI
````json POST /api/dbt_job_definitions
{
"openapi": "3.0.3",
"info": {
"title": "trocco APIリファレンス",
"description": "trocco APIリファレンス",
"version": "0.0.1"
},
"servers": [
{
"url": "https://trocco.io"
}
],
"security": [
{
"ApiKeyAuth": []
}
],
"tags": [
{
"name": "users",
"description": "ユーザー",
"externalDocs": {
"url": "https://documents.trocco.io/docs/about-account-user"
}
},
{
"name": "teams",
"description": "チーム",
"externalDocs": {
"url": "https://documents.trocco.io/docs/team"
}
},
{
"name": "connections",
"description": "接続情報",
"externalDocs": {
"url": "https://documents.trocco.io/docs/connection-configurations"
}
},
{
"name": "custom_connectors",
"description": "カスタムコネクタ定義"
},
{
"name": "datamart_definitions",
"description": "データマート定義",
"externalDocs": {
"url": "https://documents.trocco.io/docs/data-mart"
}
},
{
"name": "environment_groups",
"description": "環境グループ"
},
{
"name": "environments",
"description": "環境"
},
{
"name": "jobs",
"description": "転送ジョブ",
"externalDocs": {
"url": "https://documents.trocco.io/docs/etl-configuration"
}
},
{
"name": "pipeline_jobs",
"description": "ワークフロージョブ",
"externalDocs": {
"url": "https://documents.trocco.io/docs/about-workflow"
}
},
{
"name": "resource_groups",
"description": "リソースグループ",
"externalDocs": {
"url": "https://documents.trocco.io/docs/resource-group"
}
},
{
"name": "dbt_git_repositories",
"description": "dbt Gitリポジトリ"
},
{
"name": "dbt_job_definitions",
"description": "dbtジョブ設定",
"externalDocs": {
"url": "https://documents.trocco.io/docs/dbt-job-configuration"
}
},
{
"name": "dbt_jobs",
"description": "dbtジョブ",
"externalDocs": {
"url": "https://documents.trocco.io/docs/dbt-job-configuration"
}
},
{
"name": "notification_destinations",
"description": "通知先",
"externalDocs": {
"url": "https://documents.trocco.io/docs/trocco-tutorial-additional-settings"
}
}
],
"externalDocs": {
"description": "trocco APIについて",
"url": "https://documents.trocco.io/docs/trocco-api"
},
"paths": {
"/api/dbt_job_definitions": {
"post": {
"summary": "dbtジョブ設定作成",
"description": "dbtジョブ設定を作成します。",
"operationId": "createDbtJobDefinition",
"tags": [
"dbt_job_definitions"
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"title": "DbtJobDefinitionCreateRequest",
"type": "object",
"properties": {
"name": {
"description": "dbtジョブ設定名",
"type": "string",
"maxLength": 255,
"example": "sample_dbt_job"
},
"description": {
"description": "メモ",
"type": "string",
"nullable": true,
"example": "サンプルジョブ"
},
"resource_group_id": {
"description": "リソースグループID",
"type": "integer",
"format": "int64",
"nullable": true,
"example": 1
},
"dbt_git_repository_id": {
"description": "dbt GitリポジトリID",
"type": "integer",
"format": "int64",
"example": 1
},
"threads": {
"description": "並列実行スレッド数",
"type": "integer",
"minimum": 1,
"maximum": 16,
"example": 1
},
"target": {
"description": "dbt profileのtarget名",
"type": "string",
"example": "trocco_default"
},
"bigquery_setting": {
"description": "BigQueryアダプタ設定",
"type": "object",
"properties": {
"connection_id": {
"description": "BigQuery接続情報ID",
"type": "integer",
"format": "int64",
"example": 1
},
"dataset": {
"description": "データセット",
"type": "string",
"example": "my_dataset"
},
"location": {
"description": "ロケーション",
"type": "string",
"example": "asia-northeast1"
}
},
"required": [
"connection_id",
"dataset"
]
},
"snowflake_setting": {
"description": "Snowflakeアダプタ設定",
"type": "object",
"properties": {
"connection_id": {
"description": "Snowflake接続情報ID",
"type": "integer",
"format": "int64",
"example": 1
},
"warehouse": {
"description": "ウェアハウス名",
"type": "string",
"example": "COMPUTE_WH"
},
"database": {
"description": "データベース名",
"type": "string",
"example": "ANALYTICS"
},
"schema": {
"description": "スキーマ名",
"type": "string",
"example": "PUBLIC"
},
"role": {
"description": "ロール名",
"type": "string",
"nullable": true,
"example": "TRANSFORMER"
}
},
"required": [
"connection_id",
"warehouse",
"database",
"schema"
]
},
"redshift_setting": {
"description": "Redshiftアダプタ設定",
"type": "object",
"properties": {
"connection_id": {
"description": "Redshift接続情報ID",
"type": "integer",
"format": "int64",
"example": 1
},
"database": {
"description": "データベース名",
"type": "string",
"example": "analytics"
},
"schema": {
"description": "スキーマ名",
"type": "string",
"example": "public"
}
},
"required": [
"connection_id",
"database",
"schema"
]
},
"commands": {
"description": "dbtコマンド一覧",
"type": "array",
"items": {
"type": "object",
"properties": {
"command": {
"description": "dbtサブコマンド",
"type": "string",
"enum": [
"build",
"deps",
"run",
"run-operation",
"seed",
"snapshot",
"source-freshness",
"test"
],
"example": "run"
},
"value": {
"description": "サブコマンド引数",
"type": "string",
"nullable": true,
"example": "my_model"
},
"options": {
"description": "コマンドオプション一覧",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"description": "オプションキー",
"type": "string",
"example": "--vars"
},
"value": {
"description": "オプション値",
"type": "string",
"nullable": true,
"example": "foo=bar"
}
},
"required": [
"key"
]
}
}
},
"required": [
"command"
]
}
},
"custom_variable_settings": {
"description": "カスタム変数設定一覧",
"type": "array",
"items": {
"title": "CustomVariableSetting",
"type": "object",
"properties": {
"name": {
"description": "カスタム変数の変数名を指定します。
\n変数名を`$`で囲ってください。
\n",
"type": "string",
"example": "$start_time$"
},
"type": {
"description": "カスタム変数タイプです。
\nstring: 文字列
\ntimestamp: 時刻・日付(キューイング時)
\ntimestamp_runtime: 時刻・日付(実行時)\n",
"type": "string",
"enum": [
"string",
"timestamp",
"timestamp_runtime"
],
"example": "timestamp_runtime"
},
"value": {
"description": "カスタム変数名を展開する値を指定します。
\nカスタム変数タイプがstringのときのみ有効です。\n",
"type": "string",
"example": "jobs"
},
"quantity": {
"type": "integer",
"format": "int64",
"description": "unit 時間の数を指定します。
\nカスタム変数タイプがtimestampかtimestamp_runtime のときのみ有効です。\n",
"example": 1
},
"unit": {
"description": "時間の単位を指定します。
\nタイプがtimestampかtimestamp_runtime のときのみ有効です。
\nmonth_start: 当月月初、month_end: 当月月末、prev_month_end: 前月末 を指定した場合、quantity・direction は不要です。\n",
"type": "string",
"enum": [
"minute",
"hour",
"date",
"month",
"month_start",
"month_end",
"prev_month_end"
],
"example": "hour"
},
"direction": {
"description": "時間軸の方向です。
\nago: 前
\nlater: 後
\nタイプがtimestampかtimestamp_runtime のときのみ有効です。\n",
"type": "string",
"enum": [
"ago",
"later"
],
"example": "ago"
},
"format": {
"type": "string",
"description": "日付フォーマットです。
\nタイプがtimestampかtimestamp_runtime のときのみ有効です。\n",
"example": "%Y-%m-%d %H:%M:%S"
},
"time_zone": {
"description": "日付フォーマットの日時を解釈するタイムゾーンです。
\nタイプがtimestampかtimestamp_runtime のときのみ有効です。\n",
"type": "string",
"example": "Etc/UTC"
}
},
"required": [
"name",
"type"
]
}
}
},
"required": [
"name",
"dbt_git_repository_id"
]
}
}
}
},
"responses": {
"201": {
"description": "作成したdbtジョブ設定の詳細を返します。",
"content": {
"application/json": {
"schema": {
"title": "DbtJobDefinition",
"type": "object",
"properties": {
"id": {
"description": "dbtジョブ設定ID",
"type": "integer",
"format": "int64",
"example": 1
},
"name": {
"description": "dbtジョブ設定名",
"type": "string",
"maxLength": 255,
"example": "sample_dbt_job"
},
"description": {
"description": "メモ",
"type": "string",
"nullable": true,
"example": "サンプルジョブ"
},
"resource_group_id": {
"description": "リソースグループID",
"type": "integer",
"format": "int64",
"nullable": true,
"example": 1
},
"adapter_type": {
"description": "アダプタータイプ",
"type": "string",
"enum": [
"bigquery",
"snowflake",
"redshift"
],
"example": "bigquery"
},
"dbt_git_repository_id": {
"description": "dbt GitリポジトリID",
"type": "integer",
"format": "int64",
"example": 1
},
"threads": {
"description": "並列実行スレッド数",
"type": "integer",
"minimum": 1,
"maximum": 16,
"example": 1
},
"target": {
"description": "dbt profileのtarget名",
"type": "string",
"example": "trocco_default"
},
"bigquery_setting": {
"description": "BigQueryアダプタ設定",
"type": "object",
"nullable": true,
"properties": {
"connection_id": {
"description": "BigQuery接続情報ID",
"type": "integer",
"format": "int64",
"example": 1
},
"dataset": {
"description": "データセット",
"type": "string",
"example": "my_dataset"
},
"location": {
"description": "ロケーション",
"type": "string",
"example": "asia-northeast1"
}
},
"required": [
"connection_id",
"dataset"
]
},
"snowflake_setting": {
"description": "Snowflakeアダプタ設定",
"type": "object",
"nullable": true,
"properties": {
"connection_id": {
"description": "Snowflake接続情報ID",
"type": "integer",
"format": "int64",
"example": 1
},
"warehouse": {
"description": "ウェアハウス名",
"type": "string",
"example": "COMPUTE_WH"
},
"database": {
"description": "データベース名",
"type": "string",
"example": "ANALYTICS"
},
"schema": {
"description": "スキーマ名",
"type": "string",
"example": "PUBLIC"
},
"role": {
"description": "ロール名",
"type": "string",
"nullable": true,
"example": "TRANSFORMER"
}
},
"required": [
"connection_id",
"warehouse",
"database",
"schema"
]
},
"redshift_setting": {
"description": "Redshiftアダプタ設定",
"type": "object",
"nullable": true,
"properties": {
"connection_id": {
"description": "Redshift接続情報ID",
"type": "integer",
"format": "int64",
"example": 1
},
"database": {
"description": "データベース名",
"type": "string",
"example": "analytics"
},
"schema": {
"description": "スキーマ名",
"type": "string",
"example": "public"
}
},
"required": [
"connection_id",
"database",
"schema"
]
},
"commands": {
"description": "dbtコマンド一覧",
"type": "array",
"items": {
"type": "object",
"properties": {
"command": {
"description": "dbtサブコマンド",
"type": "string",
"enum": [
"build",
"deps",
"run",
"run-operation",
"seed",
"snapshot",
"source-freshness",
"test"
],
"example": "run"
},
"value": {
"description": "サブコマンド引数",
"type": "string",
"nullable": true,
"example": "my_model"
},
"options": {
"description": "コマンドオプション一覧",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"description": "オプションキー",
"type": "string",
"example": "--vars"
},
"value": {
"description": "オプション値",
"type": "string",
"nullable": true,
"example": "foo=bar"
}
},
"required": [
"key"
]
}
}
},
"required": [
"command"
]
}
},
"custom_variable_settings": {
"description": "カスタム変数設定一覧",
"type": "array",
"items": {
"title": "CustomVariableSetting",
"type": "object",
"properties": {
"name": {
"description": "カスタム変数の変数名を指定します。
\n変数名を`$`で囲ってください。
\n",
"type": "string",
"example": "$start_time$"
},
"type": {
"description": "カスタム変数タイプです。
\nstring: 文字列
\ntimestamp: 時刻・日付(キューイング時)
\ntimestamp_runtime: 時刻・日付(実行時)\n",
"type": "string",
"enum": [
"string",
"timestamp",
"timestamp_runtime"
],
"example": "timestamp_runtime"
},
"value": {
"description": "カスタム変数名を展開する値を指定します。
\nカスタム変数タイプがstringのときのみ有効です。\n",
"type": "string",
"example": "jobs"
},
"quantity": {
"type": "integer",
"format": "int64",
"description": "unit 時間の数を指定します。
\nカスタム変数タイプがtimestampかtimestamp_runtime のときのみ有効です。\n",
"example": 1
},
"unit": {
"description": "時間の単位を指定します。
\nタイプがtimestampかtimestamp_runtime のときのみ有効です。
\nmonth_start: 当月月初、month_end: 当月月末、prev_month_end: 前月末 を指定した場合、quantity・direction は不要です。\n",
"type": "string",
"enum": [
"minute",
"hour",
"date",
"month",
"month_start",
"month_end",
"prev_month_end"
],
"example": "hour"
},
"direction": {
"description": "時間軸の方向です。
\nago: 前
\nlater: 後
\nタイプがtimestampかtimestamp_runtime のときのみ有効です。\n",
"type": "string",
"enum": [
"ago",
"later"
],
"example": "ago"
},
"format": {
"type": "string",
"description": "日付フォーマットです。
\nタイプがtimestampかtimestamp_runtime のときのみ有効です。\n",
"example": "%Y-%m-%d %H:%M:%S"
},
"time_zone": {
"description": "日付フォーマットの日時を解釈するタイムゾーンです。
\nタイプがtimestampかtimestamp_runtime のときのみ有効です。\n",
"type": "string",
"example": "Etc/UTC"
}
},
"required": [
"name",
"type"
]
}
},
"created_at": {
"description": "作成日時",
"type": "string",
"example": "2026-05-19T18:00:00+00:00"
},
"updated_at": {
"description": "更新日時",
"type": "string",
"example": "2026-05-19T18:00:00+00:00"
},
"created_by": {
"description": "作成ユーザー",
"type": "object",
"nullable": true,
"properties": {
"id": {
"description": "ユーザーID",
"type": "integer",
"format": "int64",
"example": 1
},
"email": {
"description": "メールアドレス",
"type": "string",
"example": "user@example.com"
}
}
}
},
"required": [
"id",
"name",
"adapter_type",
"dbt_git_repository_id",
"threads",
"target",
"commands",
"created_at",
"updated_at"
]
}
}
}
},
"400": {
"description": "/api系の共通エラーレスポンス",
"content": {
"application/json": {
"schema": {
"title": "ApiErrorResponse",
"type": "object",
"properties": {
"message": {
"type": "string",
"example": "不正なリクエストです。"
},
"errors": {
"type": "array",
"description": "400エラー時のみ含まれる。エラーの詳細。",
"items": {
"type": "object",
"properties": {
"attribute": {
"type": "string",
"description": "属性名"
},
"message": {
"type": "string",
"description": "エラーメッセージ"
}
}
}
}
}
}
}
}
},
"401": {
"description": "認証エラー",
"content": {
"application/json": {
"schema": {
"title": "ErrorResponse401",
"type": "object",
"properties": {
"message": {
"type": "string",
"example": "アカウント登録もしくはログインしてください。"
}
}
}
}
}
}
}
}
}
},
"components": {
"securitySchemes": {
"ApiKeyAuth": {
"type": "apiKey",
"in": "header",
"name": "Authorization",
"description": "認証キーとなるAPI KEYをAuthorization: Token {{API KEY}}の形式でヘッダーにセットします。
\nAPI KEYがabc123の場合は、Authorization: Token abc123とします。
\nAPI KEYの作成方法は、TROCCO API KEYの作成を参照ください。\n"
}
}
}
}
````