<@624575779023355904> Since you just now announced that you are working on the /activity API, I thought this might be a good time to raise some issues. You said in the announcement that using start=timestamp "works well". It does not. It's completely broken. It used to work just fine 1-2 months ago, but you broke it, and now it no longer works. This is a very bad issue for me because I rely on this API to file my taxes. Luckily I managed to do my taxes for the previous tax period before you broke the API, but I really really hope you will fix it before the next tax period. I'm currently not aware of *any* Polymarket-provided API or web UI feature that successfully exports trades, because all the features that you've built for this are broken. I can produce reproducible examples of broken-ness if that helps.
<@624575779023355904> Since you just now announced that you are working on the /activity API, I thought this might be a good time to raise some issues. You said in the announcement that using start=timestamp "works well". It does not. It's completely broken. It used to work just fine 1-2 months ago, but you broke it, and now it no longer works. This is a very bad issue for me because I rely on this API to file my taxes. Luckily I managed to do my taxes for the previous tax period before you broke the API, but I really really hope you will fix it before the next tax period. I'm currently not aware of *any* Polymarket-provided API or web UI feature that successfully exports trades, because all the features that you've built for this are broken. I can produce reproducible examples of broken-ness if that helps.
The API currently returns non-deterministic results. It randomly misses trades.
The API currently returns non-deterministic results. It randomly misses trades.
Example of how the API is broken in a super weird way:
- when I ask for my first 2 activity items, it says that the first activity item was a CONVERSION
- when I ask for my first 3 activity items, it says that the first activity item was a REWARD
- obviously the first result is supposed to be the same result across both of these requests, there is no logical reason it should change
- the actual first activity item was neither CONVERSION nor REWARD, it was a DEPOSIT
- if i hit these endpoints repeatedly many times over a long time period, it will sometimes correctly show that the first activity item was indeed a DEPOSIT
Example of how the API is broken in a super weird way:
- when I ask for my first 2 activity items, it says that the first activity item was a CONVERSION
- when I ask for my first 3 activity items, it says that the first activity item was a REWARD
- obviously the first result is supposed to be the same result across both of these requests, there is no logical reason it should change
- the actual first activity item was neither CONVERSION nor REWARD, it was a DEPOSIT
- if i hit these endpoints repeatedly many times over a long time period, it will sometimes correctly show that the first activity item was indeed a DEPOSIT
gm - i think the ASC sort isn't working as expected, though it doesn't return wrong data.
basically DESC works fine and returns an ordered list where the first item is your latest activity.
but ASC just makes the last item (whatever limit you set) your latest activity -- so if you bump the limit to 2, you get your last 2 activities. will fix it so the first item is your oldest activity, etc.
gm - i think the ASC sort isn't working as expected, though it doesn't return wrong data.
basically DESC works fine and returns an ordered list where the first item is your latest activity.
but ASC just makes the last item (whatever limit you set) your latest activity -- so if you bump the limit to 2, you get your last 2 activities. will fix it so the first item is your oldest activity, etc.
gm - thanks for promising to fix this! i want to clarify that the API is broken in a different way than the way you described. you described the current behavior as "ASC just makes the last item (whatever limit you set) your latest activity". i took a video to demonstrate that it does not currently function that way. in the video you can see me run the same query with limit parameter 5, 6, 7, 8, 9, 10, and 15, and you can see that the first item in response is always the same. but when i change the limit parameter to 150, the first item changes. so, sometimes changing the limit parameter causes the first item to change, sometimes it doesn't. i also want to clarify that all of these are extremely old items on a dormant account, so there's nothing actually changing.
gm - thanks for promising to fix this! i want to clarify that the API is broken in a different way than the way you described. you described the current behavior as "ASC just makes the last item (whatever limit you set) your latest activity". i took a video to demonstrate that it does not currently function that way. in the video you can see me run the same query with limit parameter 5, 6, 7, 8, 9, 10, and 15, and you can see that the first item in response is always the same. but when i change the limit parameter to 150, the first item changes. so, sometimes changing the limit parameter causes the first item to change, sometimes it doesn't. i also want to clarify that all of these are extremely old items on a dormant account, so there's nothing actually changing.
Looks like DESC works from my testing. Maybe they should just remove the ASC option because too complex for them to test apparently. The weird thing is implementing the endpoints correctly should take less time than writing all these trading-api-announcments, making these even more absurd
Looks like DESC works from my testing. Maybe they should just remove the ASC option because too complex for them to test apparently. The weird thing is implementing the endpoints correctly should take less time than writing all these trading-api-announcments, making these even more absurd
Well, nope, /activity is actually broken with every filter possible, there's holes in their data last year 😂. This is not an API built by professionals, just some kids vibecoding stuff that isn't accurate. Funny thing is it used to be accurate before they "improved" it
Well, nope, /activity is actually broken with every filter possible, there's holes in their data last year 😂. This is not an API built by professionals, just some kids vibecoding stuff that isn't accurate. Funny thing is it used to be accurate before they "improved" it
Tell the data team to write something called a "test," one of the most fundamental concepts in computer science . The "test" should take an active account and check that /activity works (returns the full history). Then they will see that the /activity endpoint is broken (both ASC and DESC). It's not rocket science... In the meantime I'll go ahead and simply get my data from the blockchain rather than /activity.
Tell the data team to write something called a "test," one of the most fundamental concepts in computer science . The "test" should take an active account and check that /activity works (returns the full history). Then they will see that the /activity endpoint is broken (both ASC and DESC). It's not rocket science... In the meantime I'll go ahead and simply get my data from the blockchain rather than /activity.