Skip to content

How to Get Result

Retrieve the result of a submitted task.

Endpoint

GET https://api.get3w.com/api/v3/predictions/{task-id}

Or use the URL returned in the task submission response:

GET https://api.get3w.com/api/v3/predictions/{task-id}/result

Request

bash
curl "https://api.get3w.com/api/v3/predictions/pred_abc123" \
  -H "Authorization: Bearer YOUR_API_KEY"
python
import requests

response = requests.get(
    "https://api.get3w.com/api/v3/predictions/pred_abc123",
    headers={"Authorization": "Bearer YOUR_API_KEY"}
)

data = response.json()["data"]
print(data["status"], data.get("outputs"))
javascript
const response = await fetch(
    "https://api.get3w.com/api/v3/predictions/pred_abc123",
    { headers: { "Authorization": "Bearer YOUR_API_KEY" } }
);

const { data } = await response.json();
console.log(data.status, data.outputs);

Response

Processing

json
{
  "code": 200,
  "message": "success",
  "data": {
    "id": "pred_abc123",
    "status": "processing",
    "outputs": null
  }
}

Completed

json
{
  "code": 200,
  "message": "success",
  "data": {
    "id": "pred_abc123",
    "status": "completed",
    "outputs": [
      "https://cdn.get3w.com/outputs/image-xxxxx.png"
    ],
    "timings": {
      "inference": 2500
    }
  }
}

Failed

json
{
  "code": 200,
  "message": "success",
  "data": {
    "id": "pred_abc123",
    "status": "failed",
    "error": "Invalid input: prompt is required"
  }
}

Polling Pattern

Poll the result endpoint until the task reaches a terminal state:

python
import time
import requests

task_id = "pred_abc123"

while True:
    response = requests.get(
        f"https://api.get3w.com/api/v3/predictions/{task_id}",
        headers={"Authorization": "Bearer YOUR_API_KEY"}
    )
    data = response.json()["data"]

    if data["status"] == "completed":
        print("Done!", data["outputs"])
        break
    elif data["status"] == "failed":
        print("Failed:", data["error"])
        break

    time.sleep(1)

Response Fields

FieldDescription
idTask ID
statuscreated, processing, completed, failed
outputsArray of output URLs (when completed)
errorError message (when failed)
timingsPerformance metrics

Alternative: Webhooks

Instead of polling, use webhooks to receive a notification when the task completes.

Next Steps

Released under the MIT License.