日付に営業日を加算
土曜日と日曜日をすべて飛ばして営業日を足し引きします。2026年7月20日(月)の5営業日後は2026年7月27日(月)です。結果には曜日も表示され、ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 日付
- 2026-07-20
- 加算する営業日数
- 5
- 日付
- 2026-07-27
- 基準日
- 2026-07-20
- 営業日数
- 5
- 曜日
- Monday
業務上の締め切りが暦日で数えられることはほとんどありません。契約書に「月曜日から5営業日」とあれば、期日は土曜日ではなく翌週の月曜日です。この機能は、単一のISOカレンダー日付と営業日数の整数を受け取り、土曜日と日曜日をすべてスキップしながら日付を進める(または戻す)処理を行います。結果は正確なISO日付と曜日名として返るため、スケジュール担当者、SLAエンジン、請求ツールは、表計算ソフトを開いたりローカルタイムゾーンの癖を推測したりせずに、その答えを信頼できます。
ここでの営業日の定義
営業日とは、市民暦であるグレゴリオ暦上の月曜日から金曜日までのいずれかの日を指します。日付を前に進めても後ろに戻しても、土曜日と日曜日は常にスキップされます。祝日は意図的に対象外としています。
祝日は国、地域、業種によって異なり、汎用ツールに祝日テーブルを組み込むと、異なるカレンダーを使うチームに気づかれないまま誤った結果を返してしまうためです。祝日を考慮した範囲が必要な場合は、この結果をご自身の祝日リストと組み合わせるか、国別の営業日計算ツールをお使いください。基準日は起点であり、加算する日数の一つには数えません。
月曜日から1営業日を加えると火曜日に着地し、金曜日から1営業日を加えると翌週の月曜日になります。ゼロの場合は、その基準日が週末に当たっていても基準日をそのまま返すため、逆算の整合性が保たれます。負の数は同じ週末ルールで後ろに進むため、月曜日の1営業日前は前週の金曜日です。
実際のワークフローでの位置づけ
運用チームは、納品の約束、サポートSLA、契約上の通知期間に営業日オフセットを使います。財務チームは、週末を除いた支払い期間を計算します。プロダクトやマーケティングのチームは、土曜日に着地させることなく、ローンチのゲート、エンバーゴの解除、コンテンツカレンダーをスケジュールします。
ブラウザ経由は対話的な確認に無料で使えます。開始日を貼り付け、5と入力し、ハードコードする前に着地日を確認してください。地域が週の途中に祝日を設ける場合は、出力をご自身の祝日テーブルと組み合わせてください。
このツールはその下支えとなる信頼できる週末フィルターであり続けます。
活用例
SLAとサポートの締め切り
木曜日に作成されたチケットを、週末に着地させることなく5営業日後の期日に変換します。
契約と通知の期間
署名済みのISO開始日から、通知、更新、納品期間の最終営業日を計算します。
支払いと請求の期間
請求日にネットの営業日を加算し、財務システムが平日のみに決済するようにします。
よくある質問
祝日はスキップされますか?
いいえ。 スキップされるのは土曜日と日曜日のみです。地域で必要な場合はご自身の祝日リストを適用してください。
基準日が週末の場合はどうなりますか?
days がゼロの場合、その週末の日付はそのまま返されます。正または負の数の場合、その週末から数え始め、要求された営業日数の後の平日でのみ停止します。
営業日を減算できますか?
はい。 days に負の整数を渡すと、週末をスキップしながら後ろに移動します。
なぜ日付が拒否されたのですか?
日付は厳密なYYYY-MM-DD形式の実在するグレゴリオ暦の日でなければなりません。
基準日は営業日の数に含まれますか?
含まれません。基準日は出発点です。月曜日から1営業日足すと火曜日、金曜日から1営業日足すと翌週の月曜日になります。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/date/add-workdays \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2026-07-20","days":5}'const res = await fetch("https://api.kit.forhosting.com/date/add-workdays", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2026-07-20",
"days": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/add-workdays",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2026-07-20",
"days": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/add-workdays", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2026-07-20","days":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2026-07-20","days":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/add-workdays", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"date": "2026-07-20",
"days": 5
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.add_workdays",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_workdays | 10000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
呼び出し方と結果の読み方
date は厳密なYYYY-MM-DD形式の文字列、days は整数(正、負、またはゼロ)です。2026-02-30、2026-13-01、自由形式の文字列は、強制的に解釈するのではなく拒否されます。days の絶対値には上限が設けられており、暴走ループがアイソレートを枯渇させることはありません。送信するフィールドは2つです。date には base/start、整数には workdays/n/count といったエイリアスも受け付けるため、既存のフォームをそのまま対応付けられます。無効なカレンダー日付は invalid_input で即座に失敗します。成功時のレスポンスは、算出された日付、元の基準日、適用された符号付きの営業日数、英語の曜日名、ISO曜日番号(月曜日が1、日曜日が7)、そして平日でのみ停止するゼロ以外の移動の後は常に false であるべき is_weekend のブール値フラグを返します。ユーザー向けの文言には曜日フィールドを使い、システムの記録にはISO日付を使ってください。このアルゴリズムはローカルタイムゾーンを一切参照しないため、パイプライン内で既にUTCの深夜0時になっている日付は純粋なカレンダー値のままであり、サーバーが別のゾーンで動作していても1日ずれることはありません。
実際のワークフローでの位置づけ
開発者は同じ呼び出しをwebhookやCRONジョブに組み込み、エッジケースで食い違う場当たり的なループを再実装する代わりに、すべてのサービスが「次の営業日」という一つの定義を共有できるようにします。API経由は成功リクエストごとに $0.002 で、アイテム単位で課金されるため、エッジ実行をカバーしつつ大量計画スクリプトを安価に保てます。
技術的な質問
料金はいくらですか?
成功したAPIリクエストごとに $0.002 です。同じ計算はこのページのブラウザで無料で実行できます。