外部連携APIガイド
外部ツールから作業開始を登録する方法
このページでは、Excel VBA、PowerShell、デスクトップアプリなどから、らくログタスクへ作業開始を送信する方法を説明します。 利用者側で必要なのは、設定画面で発行したAPIトークンと、送信したい作業名です。
このAPIでできること
作業開始を登録
作業名を送信すると、らくログタスクに作業履歴が登録されます。
作業を切り替え
進行中の作業が別名の場合は、その作業を終了して新しい作業を開始します。
同じ作業は継続
進行中の作業と同じ作業名を送信した場合は、重複登録せず現在の作業を継続します。
Web画面なしで登録
Excelやデスクトップアプリ側のボタンから、直接らくログタスクへ送信できます。
利用手順
- 設定画面の「外部連携API」でAPIトークンを発行します。
- 発行されたAPIトークンを外部ツール側に設定します。
- 外部ツールから
POSTで作業名を送信します。 - らくログタスクの入力画面や履歴画面で、作業が登録されたことを確認します。
送信する内容
POST https://rakulog-app.vercel.app/api/v1/tasks/start
Authorization: Bearer rlt_xxxxx
Content-Type: application/json
{
"taskName": "見積書作成",
"startedAt": "2026-07-10T09:30:00+09:00",
"source": "desktop-app",
"note": "任意メモ"
}必須項目
taskName: 登録する作業名
任意項目
startedAt: 開始日時。省略すると送信時刻になります。source: 送信元の名前。例: excel-vba, powershell, desktop-appnote: 任意メモ
PowerShellでの送信例
$token = "rlt_xxxxx"
$body = @{
taskName = "見積書作成"
source = "powershell"
} | ConvertTo-Json
Invoke-RestMethod `
-Uri "https://rakulog-app.vercel.app/api/v1/tasks/start" `
-Method Post `
-Headers @{ Authorization = "Bearer $token" } `
-ContentType "application/json" `
-Body $bodyExcel VBAでの送信例
Sub StartRakulogTask()
Dim http As Object
Dim url As String
Dim token As String
Dim body As String
url = "https://rakulog-app.vercel.app/api/v1/tasks/start"
token = "rlt_xxxxx"
body = "{""taskName"":""見積書作成"",""source"":""excel-vba""}"
Set http = CreateObject("MSXML2.ServerXMLHTTP.6.0")
http.Open "POST", url, False
http.setRequestHeader "Authorization", "Bearer " & token
http.setRequestHeader "Content-Type", "application/json"
http.Send body
MsgBox http.responseText
End Sub正常に登録できた場合
レスポンスの ok が true なら処理成功です。action が started なら新規開始、continued なら同じ作業を継続しています。
{
"ok": true,
"action": "started",
"workDay": {
"date": "2026-07-10",
"clockIn": "09:30:00",
"status": "working"
},
"history": {
"history_id": "...",
"started_at": "2026-07-10T00:30:00.000Z"
},
"closedHistoryId": null
}すでに同じ作業名が進行中の場合は action が continued で返り、 新しい作業履歴は追加されません。
よくあるエラー
401 UNAUTHORIZED: APIトークンが未設定、間違い、または無効化済みです。400 TASK_NAME_REQUIRED:taskNameが空です。400 INVALID_JSON: 送信データがJSON形式になっていません。500: サーバー側の問題です。管理者へ連絡してください。
APIトークンの注意点
- APIトークンはパスワードと同じ扱いで管理してください。
- APIトークンを他人に共有しないでください。
- 不要になったトークンは、設定画面の「外部連携API」から無効化してください。
- APIトークンはURLに含めず、必ず
Authorizationヘッダーで送信してください。