There are three ways to find out if the task has been completed:
1 Wait for some time and make a GET request by task ID.
If the results are not ready at the moment when you requested them, you should wait a bit longer and make a GET request again.
2 Use the free “Tasks Ready” option.
It is designed to provide you with a list of completed tasks, which haven’t been collected yet. Then, you can retrieve the results of each task using its ID and the ‘Task GET’ endpoint.
Note that each separate task will remain on the list until it is collected. You can make up to 20 API calls per minute to this endpoint. With each API call, you can get 1000 tasks completed within three previous days. The list will not contain the tasks which have already been collected and the tasks that were not collected within three days after completion.
If you have set more than 1000 tasks, e.g. 1100, you will not be able to see the IDs of the remaining 100 tasks until you collect the results of the first 1000 tasks.
Importantly, if you use a postback option when setting a task, its ID will not be provided in the list of completed tasks, since its results have already been collected by our system and sent to your server. The ID of such tasks may only appear on the list in one exceptional case when you requested the list of completed tasks within a small gap of time when the task is completed, but our system hasn’t delivered the results to your server yet.
If you used a pingback option, but haven’t made a GET request to our API to collect the results, its ID will appear on the list of completed tasks.
3 Use a pingback or postback option.
If you are setting a task with the Standard method, you can specify pingback_url or postback_url in the body of your POST request, and we will notify you upon the completion of tasks (with pingback) or send the results to your server (with postback).
Learn more about using pingbacks & postbacks with DataForSEO API >>