---
metadata:
  - name: generator
    content: Diplodoc Platform v5.15.5
alternate:
  - https://delivery.yango.com/docs/en/api/express/openapi/IntegrationV2ClaimsPointsEta.md
---
> **Documentation Index:** Fetch the complete configuration index at https://delivery.yango.com/docs/en/llms.txt

<div class="openapi">

# Courier's estimated time of arrival

Returns a list of points and estimated time of arrival of the courier at the point.

## Request

<div class="openapi__requests">

<div class="openapi__request__wrapper" style="--method: var(--dc-openapi-methods-post);margin-bottom: 12px">

<div class="openapi__request">

POST {.openapi__method} 
```text translate=no
b2b.delivery.yango.tech/b2b/cargo/integration/v2/claims/points-eta
```



</div>

Service URL

</div>

</div>

### Query parameters

#|||
 **Name** 
|
 **Description** 
||

||
 claim_id<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** string

Claim ID received at the claim creation stage<br>

*Min length:*{.openapi-description-annotation} `32`

*Max length:*{.openapi-description-annotation} `64`
 
|||#{.openapi-table}

### Headers

#|||
 **Name** 
|
 **Description** 
||

||
 Accept-Language<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** string

Preferred response language. Examples: "en" — English<br>Example: `en` 
|||#{.openapi-table}

## Responses

<div class="openapi__response__code__200">

## 200 OK

Estimating the courier's time of arrival at the points

<div class="openapi-entity">

### Body

{% cut "application/json" %}


```json translate=no
{
    "id": "741cedf82cd464fa6fa16d87155c636",
    "route_points": [
        {
            "id": 1,
            "address": {
                "fullname": "One Central Building 5, Trade Center Second, Dubai",
                "shortname": "One Central Building 5, Trade Center Second",
                "coordinates": [
                    0
                ],
                "country": "UAE",
                "city": "Dubai",
                "building_name": "Dubai",
                "street": "Trade Center Second",
                "building": "building number",
                "porch": "A",
                "sfloor": "1",
                "sflat": "1",
                "door_code": "169",
                "door_code_extra": "courtyard entrance code #1234, apartment code #4321",
                "doorbell_name": "Magidovich",
                "comment": "The intercom doesn't work",
                "uri": "ymapsbm1://geo?ll=38.805%2C55.084",
                "description": "Yango Dubai Office, One Central Building 5, Trade Center Second, Dubai"
            },
            "type": "source",
            "visit_order": 1,
            "visit_status": "pending",
            "visited_at": {
                "expected": "2022-12-29T18:02:01Z",
                "expected_waiting_time_sec": 0,
                "actual": "2022-12-29T18:02:01Z"
            }
        }
    ],
    "performer_position": [
        52.569089,
        39.60258
    ]
}
```


{% endcut %}


#|||
 **Name** 
|
 **Description** 
||

||
 id<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** string

Claim ID obtained at the claim creation stage

*Example:*{.openapi-description-annotation} `741cedf82cd464fa6fa16d87155c636`

*Min length:*{.openapi-description-annotation} `32`

*Max length:*{.openapi-description-annotation} `64`
 
||

||
 route_points<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** [PointWithEta](#pointwitheta)[]

Route points with an estimated time of arrival of the courier.<br> 
||

||
 performer_position {.openapi-table-parameter-name} 
|
 **Type:** number[]

Courier location for which the ETA was calculated<br>

*Example:*{.openapi-description-annotation} 
```
[
  52.569089,
  39.60258
]
```

*Min items:*{.openapi-description-annotation} `2`

*Max items:*{.openapi-description-annotation} `2`
 
|||#{.openapi-table}

</div>

<div class="openapi-entity">

### PointWithEta

#|||
 **Name** 
|
 **Description** 
||

||
 address<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** [CargoPointAddress](#cargopointaddress)

Point address 
||

||
 id<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** integer&lt;int64&gt;

Integer point ID (int64)

*Example:*{.openapi-description-annotation} `1`
 
||

||
 type<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** [PointType](#pointtype)

Point type:
  - source: the point of departure where the courier picks up the item
  - destination: destination points where the courier delivers the items
  - return: item return point (added automatically and matches the point of departure by default, but a different point can also be selected)

*Example:*{.openapi-description-annotation} `source`

*Enum:*{.openapi-description-annotation} `source`, `destination`, `return`
 
||

||
 visit_order<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** integer&lt;int64&gt;

The order in which the points are visited (numbering starts with 1) (int64)

*Example:*{.openapi-description-annotation} `1`
 
||

||
 visit_status<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** [PointVisitStatus](#pointvisitstatus)

Point visit status:
- pending — not yet visited.
- arrived — the courier arrived at the point.
- visited — the courier handed over/picked up the cargo at the point.
- skipped — skipped (if the item wasn't accepted).

*Example:*{.openapi-description-annotation} `pending`

*Enum:*{.openapi-description-annotation} `pending`, `arrived`, `visited`, `skipped`
 
||

||
 visited_at<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** [PointVisitTime](#pointvisittime)

Estimating the time of arrival 
|||#{.openapi-table}

</div>

<div class="openapi-entity">

### CargoPointAddress

Point address

#|||
 **Name** 
|
 **Description** 
||

||
 fullname<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** string

Full address with an indication of the city, street, and house number.
You don't need to specify the flat, the entrance number, or the floor. 

*Example:*{.openapi-description-annotation} `One Central Building 5, Trade Center Second, Dubai`
 
||

||
 building {.openapi-table-parameter-name} 
|
 **Type:** string

Building

*Example:*{.openapi-description-annotation} `building number`
 
||

||
 building_name {.openapi-table-parameter-name} 
|
 **Type:** string

Apartment building name

*Example:*{.openapi-description-annotation} `Dubai`
 
||

||
 city {.openapi-table-parameter-name} 
|
 **Type:** string

City

*Example:*{.openapi-description-annotation} `Dubai`
 
||

||
 comment {.openapi-table-parameter-name} 
|
 **Type:** string

Comment for the courier.
For the dispatch point, use the template: "Delivery from store <>. Inform the manager that the order is for Yango Delivery.  Provide your order number <> and collect the parcel. The order was paid using cashless payment. So, there's no need to ask the recipient to pay for the delivery when handing over the order."
For delivery points, leave the recipient's wishes in the comments. For example, "the intercom doesn't work" / "the gate is closed, call 10 minutes in advance" / "don't call, the baby is asleep".

*Example:*{.openapi-description-annotation} `The intercom doesn't work`

*Max length:*{.openapi-description-annotation} `7000`
 
||

||
 coordinates {.openapi-table-parameter-name} 
|
 **Type:** number[]

Coordinates of points in the form of an array of two real numbers: longitude and latitude — exactly in that order.
Rounded coordinate values are specified.
<br>

*Min items:*{.openapi-description-annotation} `2`

*Max items:*{.openapi-description-annotation} `2`
 
||

||
 country {.openapi-table-parameter-name} 
|
 **Type:** string

Country

*Example:*{.openapi-description-annotation} `UAE`
 
||

||
 description {.openapi-table-parameter-name} 
|
 **Type:** string

A geographic area that turns a short address into a global match

*Example:*{.openapi-description-annotation} `Yango Dubai Office, One Central Building 5, Trade Center Second, Dubai`
 
||

||
 door_code {.openapi-table-parameter-name} 
|
 **Type:** string

Intercom code

*Example:*{.openapi-description-annotation} `169`
 
||

||
 door_code_extra {.openapi-table-parameter-name} 
|
 **Type:** string

Additional instructions for intercoms

*Example:*{.openapi-description-annotation} `courtyard entrance code #1234, apartment code #4321`
 
||

||
 doorbell_name {.openapi-table-parameter-name} 
|
 **Type:** string

Name on the doorbell

*Example:*{.openapi-description-annotation} `Magidovich`
 
||

||
 porch {.openapi-table-parameter-name} 
|
 **Type:** string

Entrance (may be A)

*Example:*{.openapi-description-annotation} `A`
 
||

||
 sflat {.openapi-table-parameter-name} 
|
 **Type:** string

Flat

*Example:*{.openapi-description-annotation} `1`
 
||

||
 sfloor {.openapi-table-parameter-name} 
|
 **Type:** string

Floor

*Example:*{.openapi-description-annotation} `1`
 
||

||
 shortname {.openapi-table-parameter-name} 
|
 **Type:** string

Short address within the city (like on a Taximeter)

*Example:*{.openapi-description-annotation} `One Central Building 5, Trade Center Second`
 
||

||
 street {.openapi-table-parameter-name} 
|
 **Type:** string

Street

*Example:*{.openapi-description-annotation} `Trade Center Second`
 
||

||
 uri {.openapi-table-parameter-name} 
|
 **Type:** string

URI of the geo object on maps

*Example:*{.openapi-description-annotation} `ymapsbm1://geo?ll=38.805%2C55.084`
 
|||#{.openapi-table}

</div>

<div class="openapi-entity">

### PointType

Point type:
  - source: the point of departure where the courier picks up the item
  - destination: destination points where the courier delivers the items
  - return: item return point (added automatically and matches the point of departure by default, but a different point can also be selected)


#|||
 **Type** 
|
 **Description** 
||

||
 [PointType](#pointtype) 
|
 

*Example:*{.openapi-description-annotation} `source`

*Enum:*{.openapi-description-annotation} `source`, `destination`, `return`
 
|||#{.openapi-table}

</div>

<div class="openapi-entity">

### PointVisitStatus

Point visit status:
- pending — not yet visited.
- arrived — the courier arrived at the point.
- visited — the courier handed over/picked up the cargo at the point.
- skipped — skipped (if the item wasn't accepted).


#|||
 **Type** 
|
 **Description** 
||

||
 [PointVisitStatus](#pointvisitstatus) 
|
 

*Example:*{.openapi-description-annotation} `pending`

*Enum:*{.openapi-description-annotation} `pending`, `arrived`, `visited`, `skipped`
 
|||#{.openapi-table}

</div>

<div class="openapi-entity">

### PointVisitTime

Information about the point visit time

#|||
 **Name** 
|
 **Description** 
||

||
 actual {.openapi-table-parameter-name} 
|
 **Type:** string&lt;date-time&gt;

Actual point visit time.
Filled in only for visited points.
 
||

||
 expected {.openapi-table-parameter-name} 
|
 **Type:** string&lt;date-time&gt;

Estimated time of arrival. Can be filled in only for unvisited points. 
||

||
 expected_waiting_time_sec {.openapi-table-parameter-name} 
|
 **Type:** integer&lt;int64&gt;

Estimated waiting time at the point. (int64) 
|||#{.openapi-table}

</div>

</div>

<div class="openapi__response__code__404">

## 404 Not Found

Claim not found

<div class="openapi-entity">

### Body

{% cut "application/json" %}


```json translate=no
{
    "code": "not_found",
    "message": "Claim not found"
}
```


{% endcut %}


#|||
 **Name** 
|
 **Description** 
||

||
 code<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** string

Error code

*Example:*{.openapi-description-annotation} `not_found`

*Enum:*{.openapi-description-annotation} `not_found`
 
||

||
 message<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** string

Error description

*Example:*{.openapi-description-annotation} `Claim not found`
 
|||#{.openapi-table}

</div>

</div>

<div class="openapi__response__code__409">

## 409 Conflict

Possible reasons for the error:
 — Claim is inactive.
 — There's no executor yet.
 — Couldn't detect the courier's location.


<div class="openapi-entity">

### Body

{% cut "application/json" %}


```json translate=no
{
    "code": "inappropriate_status",
    "message": "Invalid action regarding the claim"
}
```


{% endcut %}


#|||
 **Name** 
|
 **Description** 
||

||
 code<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** string

Error code

*Example:*{.openapi-description-annotation} `inappropriate_status`

*Enum:*{.openapi-description-annotation} `inappropriate_status`, `no_performer_info`, `unknown_performer_position`
 
||

||
 message<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** string

Error description

*Example:*{.openapi-description-annotation} `Invalid action regarding the claim`
 
|||#{.openapi-table}

</div>

</div>

<div class="openapi__response__code__429">

## 429 Too Many Requests

Too many requests

<div class="openapi-entity">

### Body

{% cut "application/json" %}


```json translate=no
{
    "code": "too_many_requests",
    "message": "Too many requests"
}
```


{% endcut %}


#|||
 **Name** 
|
 **Description** 
||

||
 code<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** string

Error code

*Example:*{.openapi-description-annotation} `too_many_requests`

*Enum:*{.openapi-description-annotation} `too_many_requests`
 
||

||
 message<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 **Type:** string

Error description

*Example:*{.openapi-description-annotation} `Too many requests`
 
|||#{.openapi-table}

</div>

</div>
<!-- markdownlint-disable-file -->

</div>



[*Deprecated]: No longer supported, please use an alternative and newer version.