プロジェクト

全般

プロフィール

Vote #73436

未完了

Add query parameters/filter for listing time entries via REST API

Admin Redmine さんが約4年前に追加. 約4年前に更新.

ステータス:
New
優先度:
通常
担当者:
-
カテゴリ:
REST API_32
対象バージョン:
-
開始日:
2022/05/09
期日:
進捗率:

0%

予定工数:
category_id:
32
version_id:
0
issue_org_id:
13275
author_id:
73044
assigned_to_id:
0
comments:
21
status_id:
1
tracker_id:
2
plus1:
1
affected_version:
closed_on:
affected_version_id:
ステータス-->[New]

説明

Currently it appears that the only way to retrieve time entries with the REST API is to either list all time entries or request them one at a time by ID. At least, that is all that is documented (http://www.redmine.org/projects/redmine/wiki/Rest_TimeEntries).

This is of very limited usefulness given that an instance may easily contain thousands upon thousands of time entries. It would be very helpful to be able to query by certain conditions or in other words filter.

Primary candidates for filter conditions would be:

  • Updated date
  • Created date
  • ID number
  • User
  • Project
  • Issue
  • Activity
  • Combinations of the above

Conditions would need to support ranges.

Hypothetical examples:

  • GET /time_entries.xml?user=X
  • GET /time_entries.xml?issue=X
  • GET /time_entries.xml?updated_on=>=2013-02-24
  • GET /time_entries.xml?id=><100|200

Priority wise I believe the queries by ID and updated date are the most important because those would at least make it possible to check for recent updates or new entries after some starting point, which is crucial functionality for many integrations.

Also refer to http://www.redmine.org/boards/1/topics/29631


journals

Hi,

here I would like to name one other filter condition

* spent on

Thanks!
Knut
--------------------------------------------------------------------------------
+1. This makes the "time entries" part of the API very useful. Without it, it's needlessly intensive to do simple things. I think the most key filter would be Knut's "spent on" filter suggestion.
--------------------------------------------------------------------------------
Should have known it already exists! Great.
This works just fine on my server (2.2.2)
http://<redmine URL>/time_entries.xml?spent_on=%3E%3C2013-05-01|2013-05-31

Also tried it with issue_id and project_id, which worked fine as well.
--------------------------------------------------------------------------------
hi man, the url can't work on my server. They just ingore the parameter like "spent_on=%3E%3C2013-05-01|2013-05-31"
can you tell me why would that happen
thanks!
--------------------------------------------------------------------------------
Bump
Is there any news regarding this one?
Spent on is working, but updated_on created_on is not :(
--------------------------------------------------------------------------------
Bump. Any news on this one?
Sorry, but I think this is critical one for Redmine integration.
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
Bump. Any news on this one here?
--------------------------------------------------------------------------------
Any news regarding this one?
--------------------------------------------------------------------------------
Bump. Any news?
--------------------------------------------------------------------------------
Bump.
--------------------------------------------------------------------------------
shawn gao wrote:
> hi man, the url can't work on my server. They just ingore the parameter like "spent_on=%3E%3C2013-05-01|2013-05-31"
> can you tell me why would that happen
> thanks!

Sorry, didn't see this till now. If you're using the exact same query I used before, it could be a permissions issue perhaps? Make sure the API token you are using has appropriate rights? I can't think of any other reason the same query that works on mine wouldn't work on yours, unless it's a version difference (as I mentioned, I am on a 2.2.2 build)
--------------------------------------------------------------------------------
As previously mentioned this can already be done "/time_entries.xml?spent_on=><2015-06-01|2015-06-30".

API Documentation should be updated by the filtering posibilities already available.
--------------------------------------------------------------------------------
It's also possible to filter by user id:

<pre>
/time_entries.json?user_id=<ID>
/time_entries.json?user_id=me
</pre>

This is totally undocumented!!!
--------------------------------------------------------------------------------
Filtering by created/updated date would be very appreciated.

That @spent_on@ filter just isn't enough.
--------------------------------------------------------------------------------
I agree with Eugene that the spent_on filter is too limiting. I also would heavily appreciate being able to filter by created_on/updated_on.

+1 to Eugene´s post.
--------------------------------------------------------------------------------
For ticket filter
<pre>
/time_entries.json?issue_id=<ID>
</pre>
--------------------------------------------------------------------------------
Hello! Also it would be good to support filtering by multiple users:
/time_entries.json?user_id=[123,456]
It will reduce requests count - no need to query server multiple times(for each user)
--------------------------------------------------------------------------------
Hello, I've run into this issue as well and wrote a small patch to expose the @created_on@ field to the REST API. I'd welcome any feedback, especially on further steps to include it into Redmine proper.
--------------------------------------------------------------------------------
Somebody know howto filter by time interval?.

If i use the URL (replacing redmineUrl by a real url and keyValue with a valid key value): https://redmineUrl/time_entries.json?key=keyValue&spent_on=2018-03-01 it returns a valid time entries for this day but if I use the interval filter as said in manualPage: http://www.redmine.org/projects/redmine/wiki/Rest_TimeEntries#spent_on-filter such us: !https://redmineUrl/time_entries.json?key=keyValue&spent_on=><2018-04-01|2018-04-30 It returns the same values as doesn't write any spent_on date filter.

Anyone knows how to use spent_on date filters? May be a bug?

My redmine version is 3.3
--------------------------------------------------------------------------------
I've found a solution for comment 20.

If I put at the end of URL _&limit=5000_ I get the _time_entries_ for the given interval with a correct result.

That is, for the example wrote on comment 20 the final url would be:

!https://redmineUrl/time_entries.json?key=keyValue&spent_on=><2018-04-01|2018-04-30&limit=5000
--------------------------------------------------------------------------------


related_issues

duplicates,Closed,12763,Add filtering capability to time entries REST API

Admin Redmine さんが約4年前に更新

  • カテゴリREST API_32 にセット

他の形式にエクスポート: Atom PDF

いいね!0
いいね!0