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

<div class="openapi">

# Courier's location

The method returns the coordinates, speed, and movement directions of the claim's courier.

## Request

<div class="openapi__requests">

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

<div class="openapi__request">

GET {.openapi__method} 
```text translate=no
b2b.delivery.yango.tech/b2b/cargo/integration/v2/claims/performer-position
```



</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}

## Responses

<div class="openapi__response__code__200">

## 200 OK

Information about the courier's location

<div class="openapi-entity">

### Body

{% cut "application/json" %}


```json translate=no
{
    "position": {
        "lat": 0,
        "lon": 0,
        "timestamp": 0,
        "accuracy": 0,
        "speed": 0,
        "direction": 0
    },
    "route_points": [
        {
            "id": 1,
            "type": "source",
            "visit_order": 1,
            "sharing_link": "string"
        }
    ]
}
```


{% endcut %}


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

||
 position<span class="openapi__required">*</span> {.openapi-table-parameter-name} 
|
 {% cut "**Type:** object" %}{.openapi-table-parameter-inline-type}

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

Latitude

*Min value:*{.openapi-description-annotation} `-90`

*Max value:*{.openapi-description-annotation} `90`
 
||

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

Longitude

*Min value:*{.openapi-description-annotation} `-180`

*Max value:*{.openapi-description-annotation} `180`
 
||

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

GPS signal detection time, unix-time 
||

||
 accuracy {.openapi-table-parameter-name} 
|
 **Type:** number

GPS accuracy. Can't be added at the moment because the issue of measurement units hasn't been solved yet. 
||

||
 direction {.openapi-table-parameter-name} 
|
 **Type:** number

Direction. The angle from 0 to 360 degrees from the north direction, clockwise. 0 — north, 90 — east, 180 — south, 270 — west. 
||

||
 speed {.openapi-table-parameter-name} 
|
 **Type:** number

Average speed, m/s 
|||#{.openapi-table}

{% endcut %}


Extended format of the courier's geolocation 
||

||
 route_points {.openapi-table-parameter-name} 
|
 **Type:** [PointWithSharingLink](#pointwithsharinglink)[]

Route points with tracking links<br> 
|||#{.openapi-table}

</div>

<div class="openapi-entity">

### PointWithSharingLink

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

||
 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`
 
||

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

Route tracking link. Available only for destination points 
|||#{.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>

<div class="openapi__response__code__404">

## 404 Not Found

Executor or courier's location 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

Inactive claim or no information about the executor

<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} `unknown_performer_position`, `inappropriate_status`
 
||

||
 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.