# Pickup (pickup request)

## Pickup - GET

It returns information about the pick-up requests.

## Pick-up information retrieval .

<mark style="color:blue;">`GET`</mark> `https://api.gsped.it/[INSTANCE]/pickup`

#### Query Parameters

| Name                                 | Type    | Description |
| ------------------------------------ | ------- | ----------- |
| id<mark style="color:red;">\*</mark> | Integer | Pick-up ID  |

#### Headers

| Name                                        | Type   | Description            |
| ------------------------------------------- | ------ | ---------------------- |
| x-api-key<mark style="color:red;">\*</mark> | String | API key given by Gsped |

{% tabs %}
{% tab title="200: OK Operation successfully performed" %}

```javascript
{
    "status": 2,
    "num_spedizione": "",
    "error": "",
    "id": 70058437,
    "note": "",
    "note_orm": "",
    "num_orm": "CBJ180121002626"
}
```

{% endtab %}

{% tab title="400: Bad Request Bad request" %}

```javascript
{
    "error": "ID richiesta di ritiro non indicato"
}
```

{% endtab %}

{% tab title="403: Forbidden Invalid API Key" %}

```javascript
{
    "status": false,
    "error": "Invalid API key "
}
```

{% endtab %}

{% tab title="404: Not Found " %}

```javascript
{
    "error": "Richiesta di ritiro non trovata"
}
```

{% endtab %}
{% endtabs %}

### **Snippets example**

{% tabs %}
{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://api.gsped.it/sandbox/pickup?id_sped=12345',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'GET',
  CURLOPT_HTTPHEADER => array(
    'x-api-key: YOUR-API-KEY'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
```

{% endtab %}

{% tab title="Python" %}

```python
import http.client

conn = http.client.HTTPSConnection("api.gsped.it")
payload = ''
headers = {
  'x-api-key': 'YOUR-API-KEY'
}
conn.request("GET", "/sandbox/pickup?id_sped=12345", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="GO" %}

```go
package main

import (
  "fmt"
  "net/http"
  "io/ioutil"
)

func main() {

  url := "https://api.gsped.it/sandbox/pickup?id_sped=12345"
  method := "GET"

  client := &http.Client {
  }
  req, err := http.NewRequest(method, url, nil)

  if err != nil {
    fmt.Println(err)
    return
  }
  req.Header.Add("x-api-key", "YOUR-API-KEY")

  res, err := client.Do(req)
  if err != nil {
    fmt.Println(err)
    return
  }
  defer res.Body.Close()

  body, err := ioutil.ReadAll(res.Body)
  if err != nil {
    fmt.Println(err)
    return
  }
  fmt.Println(string(body))
}
```

{% endtab %}

{% tab title="C#" %}

```csharp
var client = new RestClient("https://api.gsped.it/sandbox/pickup?id_sped=12345");
client.Timeout = -1;
var request = new RestRequest(Method.GET);
request.AddHeader("x-api-key", "YOUR-API-KEY");
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
```

{% endtab %}

{% tab title="cURL" %}

```shell
curl --location --request GET 'https://api.gsped.it/sandbox/pickup?id_sped=12345' \
--header 'x-api-key: YOUR-API-KEY'
```

{% endtab %}
{% endtabs %}

## Pickup - POST

It sends the courier a pick-up request.

{% hint style="info" %}
**Please Note:**

This endpoint, unless errors in the name fields and/or incorrect data, always returns the **200,** status code, even in the event that the shipment has not successfully performed.

Always check the **status** field in the pick-up response.

If the value of the field is **0.6** or **10** the pick-up has not been requested (in most of cases because of unmanageable dates or times not accepted by the courier)

Not all the couriers provide these information immediately, therefore check with the Gsped technicians about the couriers you want to use this endpoint with.
{% endhint %}

## Send pick-up request

<mark style="color:green;">`POST`</mark> `https://api.gsped.it/[INSTANCE]/pickup`

#### Headers

| Name                                           | Type   | Description            |
| ---------------------------------------------- | ------ | ---------------------- |
| Content-Type<mark style="color:red;">\*</mark> | String | application/json       |
| x-api-key<mark style="color:red;">\*</mark>    | String | API key given by GSped |

#### Request Body

| Name                                                | Type    | Description                                                             |
| --------------------------------------------------- | ------- | ----------------------------------------------------------------------- |
| client\_id<mark style="color:red;">\*</mark>        | Integer | Id of the registry you want to generate the shipment with (given value) |
| corriere<mark style="color:red;">\*</mark>          | Integer | Courier code                                                            |
| servizio<mark style="color:red;">\*</mark>          | Integer | Service code                                                            |
| colli<mark style="color:red;">\*</mark>             | Integer | NUmber of parcels of the shipment                                       |
| peso<mark style="color:red;">\*</mark>              | Float   | Total weight (KG)                                                       |
| date\_req\_ritiro<mark style="color:red;">\*</mark> | String  | Date of pick-up (YYYY-MM-DD)                                            |
| opening\_time<mark style="color:red;">\*</mark>     | String  | Goods ready time (HH:MM:SS)                                             |
| closing\_time<mark style="color:red;">\*</mark>     | String  | Closing time (HH:MM:SS)                                                 |
| opening\_time2                                      | String  | Second goods ready time (HH:MM:SS) - *only for TNT*                     |
| closing\_time2                                      | String  | Second closing time (HH:MM:SS) - *only for TNT*                         |
| note\_sender                                        | String  | Sender name                                                             |
| ddt\_alpha                                          | String  | Customer alphanumeric reference                                         |
| ddt\_num                                            | Integer | Customer numeric reference                                              |
| sender\_name                                        | String  | Name/ designation/business name of the sender                           |
| sender\_addr                                        | String  | Sender address (street and number)                                      |
| sender\_cap                                         | String  | Zip code of the sender                                                  |
| sender\_city                                        | String  | City of the sender                                                      |
| sender\_prov                                        | String  | Province of the sender (2 characters)                                   |
| sender\_country\_code                               | String  | Country of the sender (ISO 3166-1 alpha-2)                              |
| sender\_contact                                     | String  | Additional sender contact                                               |
| sender\_email                                       | String  | E-mail of the sender                                                    |
| sender\_phone                                       | String  | Phone number of the sender                                              |
| rcpt\_name                                          | String  | Name/ designation/business name of the recipient                        |
| rcpt\_addr                                          | String  | Recipient address (street and number)                                   |
| rcpt\_cap                                           | String  | Zip code of the recipient                                               |
| rcpt\_city                                          | String  | City of the recipient                                                   |
| rcpt\_prov                                          | String  | Province of the recipient (2 characters)                                |
| rcpt\_country\_code                                 | String  | Country of the recipient (ISO 3166-1 alpha-2)                           |
| rcpt\_contact                                       | String  | Additional recipient contact                                            |
| rcpt\_phone                                         | String  | Phone number of the recipient                                           |
| rcpt\_email                                         | String  | E-mail of the recipient                                                 |
| merce                                               | String  | Goods description                                                       |
| daticolli                                           | Array   | Size of the parcels (if available)                                      |
| daticolli.n\_collo                                  | Integer | Progressive number                                                      |
| daticolli.altezza                                   | Integer | Height (cm)                                                             |
| daticolli.larghezza                                 | Integer | Width (cm)                                                              |
| daticolli.lunghezza                                 | Integer | Lenght (cm)                                                             |
| daticolli.peso                                      | Float   | Weight (kg)                                                             |
| daticolli.volume                                    | Float   | Volume (cu m)                                                           |

{% tabs %}
{% tab title="200: OK Successful request" %}

```javascript
{
    "status": 2,
    "num_spedizione": "",
    "error": "",
    "id": 70061546,
    "note": "",
    "note_orm": "",
    "num_orm": "CBJ180121002626"
}
```

{% endtab %}

{% tab title="400: Bad Request Bad request" %}

```javascript
{
    "error": "client_id: valore non valido"
}
```

{% endtab %}
{% endtabs %}

### **Example snippets**

{% tabs %}
{% tab title="PHP" %}

```php
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://api.gsped.it/sandbox/pickup',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
  "client_id": 390,
  "corriere": 1,
  "servizio": 0,
  "colli": 1,
  "peso": 5,
  "date_req_ritiro": "2022-01-14",
  "opening_time": "09:00",
  "closing_time": "17:30",
  "ddt_alpha": "2001504697",
  "ddt_num": 2001504697,
  "sender_name": "Test mittente",
  "sender_addr": "VIA PRINCIPESSA CLOTILDE, 70",
  "sender_cap": "10134",
  "sender_city": "Torino",
  "sender_contact": "contatto mittente",
  "sender_prov": "TO",
  "sender_country_code": "IT",
  "sender_email": "test@gsped.com",
  "sender_phone": "3208281234",
  "note_sender": "",
  "rcpt_addr": "Via Pier Santi Mattarella, 1",
  "rcpt_cap": "92100",
  "rcpt_city": "AGRIGENTO",
  "rcpt_contact": "contatto destinatario",
  "rcpt_country_code": "IT",
  "rcpt_email": "test@gsped.com",
  "rcpt_name": "test destinatario",
  "rcpt_phone": "0922601234",
  "rcpt_prov": "AG",
  "merce": "Articoli arredamento",
  "daticolli": [
    {
      "n_collo": 1,
      "altezza": 50,
      "larghezza": 35,
      "lunghezza": 25,
      "peso": 10,
      "volume": 0.014
    }
  ]
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'x-api-key: YOUR-API-KEY'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
```

{% endtab %}

{% tab title="PYTHON" %}

```python
import http.client
import json

conn = http.client.HTTPSConnection("api.gsped.it")
payload = json.dumps({
  "client_id": 390,
  "corriere": 1,
  "servizio": 0,
  "colli": 1,
  "peso": 5,
  "date_req_ritiro": "2022-01-14",
  "opening_time": "09:00",
  "closing_time": "17:30",
  "ddt_alpha": "2001504697",
  "ddt_num": 2001504697,
  "sender_name": "Test mittente",
  "sender_addr": "VIA PRINCIPESSA CLOTILDE, 70",
  "sender_cap": "10134",
  "sender_city": "Torino",
  "sender_contact": "contatto mittente",
  "sender_prov": "TO",
  "sender_country_code": "IT",
  "sender_email": "test@gsped.com",
  "sender_phone": "3208281234",
  "note_sender": "",
  "rcpt_addr": "Via Pier Santi Mattarella, 1",
  "rcpt_cap": "92100",
  "rcpt_city": "AGRIGENTO",
  "rcpt_contact": "contatto destinatario",
  "rcpt_country_code": "IT",
  "rcpt_email": "test@gsped.com",
  "rcpt_name": "test destinatario",
  "rcpt_phone": "0922601234",
  "rcpt_prov": "AG",
  "merce": "Articoli arredamento",
  "daticolli": [
    {
      "n_collo": 1,
      "altezza": 50,
      "larghezza": 35,
      "lunghezza": 25,
      "peso": 10,
      "volume": 0.014
    }
  ]
})
headers = {
  'Content-Type': 'application/json',
  'x-api-key': 'YOUR-API-KEY'
}
conn.request("POST", "/sandbox/pickup", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
```

{% endtab %}

{% tab title="GO" %}

```go
package main

import (
  "fmt"
  "strings"
  "net/http"
  "io/ioutil"
)

func main() {

  url := "https://api.gsped.it/sandbox/pickup"
  method := "POST"

  payload := strings.NewReader(`{`+"
"+`
  "client_id": 390,`+"
"+`
  "corriere": 1,`+"
"+`
  "servizio": 0,`+"
"+`
  "colli": 1,`+"
"+`
  "peso": 5,`+"
"+`
  "date_req_ritiro": "2022-01-14",`+"
"+`
  "opening_time": "09:00",`+"
"+`
  "closing_time": "17:30",`+"
"+`
  "ddt_alpha": "2001504697",`+"
"+`
  "ddt_num": 2001504697,`+"
"+`
  "sender_name": "Test mittente",`+"
"+`
  "sender_addr": "VIA PRINCIPESSA CLOTILDE, 70",`+"
"+`
  "sender_cap": "10134",`+"
"+`
  "sender_city": "Torino",`+"
"+`
  "sender_contact": "contatto mittente",`+"
"+`
  "sender_prov": "TO",`+"
"+`
  "sender_country_code": "IT",`+"
"+`
  "sender_email": "test@gsped.com",`+"
"+`
  "sender_phone": "3208281234",`+"
"+`
  "note_sender": "",`+"
"+`
  "rcpt_addr": "Via Pier Santi Mattarella, 1",`+"
"+`
  "rcpt_cap": "92100",`+"
"+`
  "rcpt_city": "AGRIGENTO",`+"
"+`
  "rcpt_contact": "contatto destinatario",`+"
"+`
  "rcpt_country_code": "IT",`+"
"+`
  "rcpt_email": "test@gsped.com",`+"
"+`
  "rcpt_name": "test destinatario",`+"
"+`
  "rcpt_phone": "0922601234",`+"
"+`
  "rcpt_prov": "AG",`+"
"+`
  "merce": "Articoli arredamento",`+"
"+`
  "daticolli": [`+"
"+`
    {`+"
"+`
      "n_collo": 1,`+"
"+`
      "altezza": 50,`+"
"+`
      "larghezza": 35,`+"
"+`
      "lunghezza": 25,`+"
"+`
      "peso": 10,`+"
"+`
      "volume": 0.014`+"
"+`
    }`+"
"+`
  ]`+"
"+`
}`)

  client := &http.Client {
  }
  req, err := http.NewRequest(method, url, payload)

  if err != nil {
    fmt.Println(err)
    return
  }
  req.Header.Add("Content-Type", "application/json")
  req.Header.Add("x-api-key", "YOUR-API-KEY")

  res, err := client.Do(req)
  if err != nil {
    fmt.Println(err)
    return
  }
  defer res.Body.Close()

  body, err := ioutil.ReadAll(res.Body)
  if err != nil {
    fmt.Println(err)
    return
  }
  fmt.Println(string(body))
}
```

{% endtab %}

{% tab title="C#" %}

```csharp
var client = new RestClient("https://api.gsped.it/sandbox/pickup");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("x-api-key", "YOUR-API-KEY");
var body = @"{
" + "\n" +
@"  ""client_id"": 390,
" + "\n" +
@"  ""corriere"": 1,
" + "\n" +
@"  ""servizio"": 0,
" + "\n" +
@"  ""colli"": 1,
" + "\n" +
@"  ""peso"": 5,
" + "\n" +
@"  ""date_req_ritiro"": ""2022-01-14"",
" + "\n" +
@"  ""opening_time"": ""09:00"",
" + "\n" +
@"  ""closing_time"": ""17:30"",
" + "\n" +
@"  ""ddt_alpha"": ""2001504697"",
" + "\n" +
@"  ""ddt_num"": 2001504697,
" + "\n" +
@"  ""sender_name"": ""Test mittente"",
" + "\n" +
@"  ""sender_addr"": ""VIA PRINCIPESSA CLOTILDE, 70"",
" + "\n" +
@"  ""sender_cap"": ""10134"",
" + "\n" +
@"  ""sender_city"": ""Torino"",
" + "\n" +
@"  ""sender_contact"": ""contatto mittente"",
" + "\n" +
@"  ""sender_prov"": ""TO"",
" + "\n" +
@"  ""sender_country_code"": ""IT"",
" + "\n" +
@"  ""sender_email"": ""test@gsped.com"",
" + "\n" +
@"  ""sender_phone"": ""3208281234"",
" + "\n" +
@"  ""note_sender"": """",
" + "\n" +
@"  ""rcpt_addr"": ""Via Pier Santi Mattarella, 1"",
" + "\n" +
@"  ""rcpt_cap"": ""92100"",
" + "\n" +
@"  ""rcpt_city"": ""AGRIGENTO"",
" + "\n" +
@"  ""rcpt_contact"": ""contatto destinatario"",
" + "\n" +
@"  ""rcpt_country_code"": ""IT"",
" + "\n" +
@"  ""rcpt_email"": ""test@gsped.com"",
" + "\n" +
@"  ""rcpt_name"": ""test destinatario"",
" + "\n" +
@"  ""rcpt_phone"": ""0922601234"",
" + "\n" +
@"  ""rcpt_prov"": ""AG"",
" + "\n" +
@"  ""merce"": ""Articoli arredamento"",
" + "\n" +
@"  ""daticolli"": [
" + "\n" +
@"    {
" + "\n" +
@"      ""n_collo"": 1,
" + "\n" +
@"      ""altezza"": 50,
" + "\n" +
@"      ""larghezza"": 35,
" + "\n" +
@"      ""lunghezza"": 25,
" + "\n" +
@"      ""peso"": 10,
" + "\n" +
@"      ""volume"": 0.014
" + "\n" +
@"    }
" + "\n" +
@"  ]
" + "\n" +
@"}";
request.AddParameter("application/json", body,  ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
```

{% endtab %}

{% tab title="cURL" %}

```shell
curl --location --request POST 'https://api.gsped.it/sandbox/pickup' \
--header 'Content-Type: application/json' \
--header 'x-api-key: YOUR-API-KEY' \
--data-raw '{
  "client_id": 390,
  "corriere": 1,
  "servizio": 0,
  "colli": 1,
  "peso": 5,
  "date_req_ritiro": "2022-01-14",
  "opening_time": "09:00",
  "closing_time": "17:30",
  "ddt_alpha": "2001504697",
  "ddt_num": 2001504697,
  "sender_name": "Test mittente",
  "sender_addr": "VIA PRINCIPESSA CLOTILDE, 70",
  "sender_cap": "10134",
  "sender_city": "Torino",
  "sender_contact": "contatto mittente",
  "sender_prov": "TO",
  "sender_country_code": "IT",
  "sender_email": "test@gsped.com",
  "sender_phone": "3208281234",
  "note_sender": "",
  "rcpt_addr": "Via Pier Santi Mattarella, 1",
  "rcpt_cap": "92100",
  "rcpt_city": "AGRIGENTO",
  "rcpt_contact": "contatto destinatario",
  "rcpt_country_code": "IT",
  "rcpt_email": "test@gsped.com",
  "rcpt_name": "test destinatario",
  "rcpt_phone": "0922601234",
  "rcpt_prov": "AG",
  "merce": "Articoli arredamento",
  "daticolli": [
    {
      "n_collo": 1,
      "altezza": 50,
      "larghezza": 35,
      "lunghezza": 25,
      "peso": 10,
      "volume": 0.014
    }
  ]
}'
```

{% endtab %}
{% endtabs %}
