Wrike · Capability

Wrike API — Time Logs

Wrike API — Time Logs. 8 operations. Lead operation: List Account Time Logs. Self-contained Naftiko capability covering one Wrike business surface.

Run with Naftiko WrikeTime Logs

What You Can Do

GET
Listaccounttimelogs — List Account Time Logs
/v1/accounts/{accountid}/timelogs
GET
Listcontacttimelogs — List Contact Time Logs
/v1/contacts/{contactid}/timelogs
GET
Listfoldertimelogs — List Folder Time Logs
/v1/folders/{folderid}/timelogs
GET
Listtasktimelogs — List Task Time Logs
/v1/tasks/{taskid}/timelogs
GET
Listtimelogs — List Time Logs
/v1/timelogs
GET
Gettimelog — Get Time Log
/v1/timelogs/{timelogid}
PUT
Updatetimelog — Update Time Log
/v1/timelogs/{timelogid}
DELETE
Deletetimelog — Delete Time Log
/v1/timelogs/{timelogid}

MCP Tools

list-account-time-logs

List Account Time Logs

read-only idempotent
list-contact-time-logs

List Contact Time Logs

read-only idempotent
list-folder-time-logs

List Folder Time Logs

read-only idempotent
list-task-time-logs

List Task Time Logs

read-only idempotent
list-time-logs

List Time Logs

read-only idempotent
get-time-log

Get Time Log

read-only idempotent
update-time-log

Update Time Log

idempotent
delete-time-log

Delete Time Log

idempotent

Capability Spec

wrike-time-logs.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Wrike API — Time Logs
  description: 'Wrike API — Time Logs. 8 operations. Lead operation: List Account Time Logs. Self-contained Naftiko capability
    covering one Wrike business surface.'
  tags:
  - Wrike
  - Time Logs
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    WRIKE_API_KEY: WRIKE_API_KEY
capability:
  consumes:
  - type: http
    namespace: wrike-time-logs
    baseUri: https://www.wrike.com/api/v4
    description: Wrike API — Time Logs business capability. Self-contained, no shared references.
    resources:
    - name: accounts-accountId-timelogs
      path: /accounts/{accountId}/timelogs
      operations:
      - name: listaccounttimelogs
        method: GET
        description: List Account Time Logs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: accountId
          in: path
          type: string
          required: true
        - name: trackedDate
          in: query
          type: string
    - name: contacts-contactId-timelogs
      path: /contacts/{contactId}/timelogs
      operations:
      - name: listcontacttimelogs
        method: GET
        description: List Contact Time Logs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: contactId
          in: path
          type: string
          required: true
        - name: createdDate
          in: query
          type: string
        - name: trackedDate
          in: query
          type: string
        - name: me
          in: query
          type: boolean
    - name: folders-folderId-timelogs
      path: /folders/{folderId}/timelogs
      operations:
      - name: listfoldertimelogs
        method: GET
        description: List Folder Time Logs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: folderId
          in: path
          type: string
          required: true
        - name: trackedDate
          in: query
          type: string
    - name: tasks-taskId-timelogs
      path: /tasks/{taskId}/timelogs
      operations:
      - name: listtasktimelogs
        method: GET
        description: List Task Time Logs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: taskId
          in: path
          type: string
          required: true
        - name: trackedDate
          in: query
          type: string
    - name: timelogs
      path: /timelogs
      operations:
      - name: listtimelogs
        method: GET
        description: List Time Logs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: createdDate
          in: query
          type: string
        - name: trackedDate
          in: query
          type: string
        - name: me
          in: query
          type: boolean
        - name: descendants
          in: query
          type: boolean
        - name: subTasks
          in: query
          type: boolean
        - name: plainText
          in: query
          type: boolean
    - name: timelogs-timelogId
      path: /timelogs/{timelogId}
      operations:
      - name: gettimelog
        method: GET
        description: Get Time Log
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: timelogId
          in: path
          type: string
          required: true
      - name: updatetimelog
        method: PUT
        description: Update Time Log
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: timelogId
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: deletetimelog
        method: DELETE
        description: Delete Time Log
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: timelogId
          in: path
          type: string
          required: true
    authentication:
      type: bearer
      token: '{{env.WRIKE_API_KEY}}'
  exposes:
  - type: rest
    namespace: wrike-time-logs-rest
    port: 8080
    description: REST adapter for Wrike API — Time Logs. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/accounts/{accountid}/timelogs
      name: accounts-accountid-timelogs
      description: REST surface for accounts-accountId-timelogs.
      operations:
      - method: GET
        name: listaccounttimelogs
        description: List Account Time Logs
        call: wrike-time-logs.listaccounttimelogs
        with:
          accountId: rest.accountId
          trackedDate: rest.trackedDate
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/contacts/{contactid}/timelogs
      name: contacts-contactid-timelogs
      description: REST surface for contacts-contactId-timelogs.
      operations:
      - method: GET
        name: listcontacttimelogs
        description: List Contact Time Logs
        call: wrike-time-logs.listcontacttimelogs
        with:
          contactId: rest.contactId
          createdDate: rest.createdDate
          trackedDate: rest.trackedDate
          me: rest.me
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/folders/{folderid}/timelogs
      name: folders-folderid-timelogs
      description: REST surface for folders-folderId-timelogs.
      operations:
      - method: GET
        name: listfoldertimelogs
        description: List Folder Time Logs
        call: wrike-time-logs.listfoldertimelogs
        with:
          folderId: rest.folderId
          trackedDate: rest.trackedDate
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/tasks/{taskid}/timelogs
      name: tasks-taskid-timelogs
      description: REST surface for tasks-taskId-timelogs.
      operations:
      - method: GET
        name: listtasktimelogs
        description: List Task Time Logs
        call: wrike-time-logs.listtasktimelogs
        with:
          taskId: rest.taskId
          trackedDate: rest.trackedDate
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/timelogs
      name: timelogs
      description: REST surface for timelogs.
      operations:
      - method: GET
        name: listtimelogs
        description: List Time Logs
        call: wrike-time-logs.listtimelogs
        with:
          createdDate: rest.createdDate
          trackedDate: rest.trackedDate
          me: rest.me
          descendants: rest.descendants
          subTasks: rest.subTasks
          plainText: rest.plainText
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/timelogs/{timelogid}
      name: timelogs-timelogid
      description: REST surface for timelogs-timelogId.
      operations:
      - method: GET
        name: gettimelog
        description: Get Time Log
        call: wrike-time-logs.gettimelog
        with:
          timelogId: rest.timelogId
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updatetimelog
        description: Update Time Log
        call: wrike-time-logs.updatetimelog
        with:
          timelogId: rest.timelogId
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletetimelog
        description: Delete Time Log
        call: wrike-time-logs.deletetimelog
        with:
          timelogId: rest.timelogId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: wrike-time-logs-mcp
    port: 9090
    transport: http
    description: MCP adapter for Wrike API — Time Logs. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: list-account-time-logs
      description: List Account Time Logs
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: wrike-time-logs.listaccounttimelogs
      with:
        accountId: tools.accountId
        trackedDate: tools.trackedDate
      outputParameters:
      - type: object
        mapping: $.
    - name: list-contact-time-logs
      description: List Contact Time Logs
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: wrike-time-logs.listcontacttimelogs
      with:
        contactId: tools.contactId
        createdDate: tools.createdDate
        trackedDate: tools.trackedDate
        me: tools.me
      outputParameters:
      - type: object
        mapping: $.
    - name: list-folder-time-logs
      description: List Folder Time Logs
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: wrike-time-logs.listfoldertimelogs
      with:
        folderId: tools.folderId
        trackedDate: tools.trackedDate
      outputParameters:
      - type: object
        mapping: $.
    - name: list-task-time-logs
      description: List Task Time Logs
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: wrike-time-logs.listtasktimelogs
      with:
        taskId: tools.taskId
        trackedDate: tools.trackedDate
      outputParameters:
      - type: object
        mapping: $.
    - name: list-time-logs
      description: List Time Logs
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: wrike-time-logs.listtimelogs
      with:
        createdDate: tools.createdDate
        trackedDate: tools.trackedDate
        me: tools.me
        descendants: tools.descendants
        subTasks: tools.subTasks
        plainText: tools.plainText
      outputParameters:
      - type: object
        mapping: $.
    - name: get-time-log
      description: Get Time Log
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: wrike-time-logs.gettimelog
      with:
        timelogId: tools.timelogId
      outputParameters:
      - type: object
        mapping: $.
    - name: update-time-log
      description: Update Time Log
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: wrike-time-logs.updatetimelog
      with:
        timelogId: tools.timelogId
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-time-log
      description: Delete Time Log
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: wrike-time-logs.deletetimelog
      with:
        timelogId: tools.timelogId
      outputParameters:
      - type: object
        mapping: $.