Update Availability
curl --request PUT \
--url https://harbor-parking.vercel.app/api/availabilities/{id} \
--header 'Content-Type: application/json' \
--data '
{
"start_time": "<string>",
"end_time": "<string>"
}
'import requests
url = "https://harbor-parking.vercel.app/api/availabilities/{id}"
payload = {
"start_time": "<string>",
"end_time": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({start_time: '<string>', end_time: '<string>'})
};
fetch('https://harbor-parking.vercel.app/api/availabilities/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://harbor-parking.vercel.app/api/availabilities/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'start_time' => '<string>',
'end_time' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://harbor-parking.vercel.app/api/availabilities/{id}"
payload := strings.NewReader("{\n \"start_time\": \"<string>\",\n \"end_time\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://harbor-parking.vercel.app/api/availabilities/{id}")
.header("Content-Type", "application/json")
.body("{\n \"start_time\": \"<string>\",\n \"end_time\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://harbor-parking.vercel.app/api/availabilities/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"start_time\": \"<string>\",\n \"end_time\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"availability": {
"id": "789e0123-e89b-12d3-a456-426614174002",
"spot_id": "123e4567-e89b-12d3-a456-426614174000",
"start_time": "2024-01-16T08:00:00Z",
"end_time": "2024-01-16T18:00:00Z",
"is_claimed": false,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-16T11:45:00Z"
}
}
Availabilities
Update Availability
Modify availability window details
PUT
/
api
/
availabilities
/
{id}
Update Availability
curl --request PUT \
--url https://harbor-parking.vercel.app/api/availabilities/{id} \
--header 'Content-Type: application/json' \
--data '
{
"start_time": "<string>",
"end_time": "<string>"
}
'import requests
url = "https://harbor-parking.vercel.app/api/availabilities/{id}"
payload = {
"start_time": "<string>",
"end_time": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({start_time: '<string>', end_time: '<string>'})
};
fetch('https://harbor-parking.vercel.app/api/availabilities/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://harbor-parking.vercel.app/api/availabilities/{id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'start_time' => '<string>',
'end_time' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://harbor-parking.vercel.app/api/availabilities/{id}"
payload := strings.NewReader("{\n \"start_time\": \"<string>\",\n \"end_time\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://harbor-parking.vercel.app/api/availabilities/{id}")
.header("Content-Type", "application/json")
.body("{\n \"start_time\": \"<string>\",\n \"end_time\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://harbor-parking.vercel.app/api/availabilities/{id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"start_time\": \"<string>\",\n \"end_time\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"availability": {
"id": "789e0123-e89b-12d3-a456-426614174002",
"spot_id": "123e4567-e89b-12d3-a456-426614174000",
"start_time": "2024-01-16T08:00:00Z",
"end_time": "2024-01-16T18:00:00Z",
"is_claimed": false,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-16T11:45:00Z"
}
}
Overview
This endpoint allows parking spot owners to update their availability windows.You cannot update an availability that has already been claimed.
Authentication
Path Parameters
Unique identifier of the availability to update
Request Body
Updated availability start time (ISO 8601 format)
Updated availability end time (ISO 8601 format)
Response
Updated availability object
Show Availability Object
Show Availability Object
Unique availability identifier (UUID)
ID of the associated parking spot
Availability start time (ISO 8601)
Availability end time (ISO 8601)
Whether this availability has been claimed
Availability creation timestamp (ISO 8601)
Availability last update timestamp (ISO 8601)
Example Request
curl -X PUT "https://harbor-parking.vercel.app/api/availabilities/789e0123-e89b-12d3-a456-426614174002" \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"start_time": "2024-01-16T08:00:00Z",
"end_time": "2024-01-16T18:00:00Z"
}'
const availabilityId = "789e0123-e89b-12d3-a456-426614174002";
const response = await fetch(`https://harbor-parking.vercel.app/api/availabilities/${availabilityId}`, {
method: 'PUT',
headers: {
'Authorization': `Bearer ${yourJwtToken}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
start_time: "2024-01-16T08:00:00Z",
end_time: "2024-01-16T18:00:00Z"
})
});
const result = await response.json();
Example Response
{
"availability": {
"id": "789e0123-e89b-12d3-a456-426614174002",
"spot_id": "123e4567-e89b-12d3-a456-426614174000",
"start_time": "2024-01-16T08:00:00Z",
"end_time": "2024-01-16T18:00:00Z",
"is_claimed": false,
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-16T11:45:00Z"
}
}
Error Responses
{
"error": "Cannot update a claimed availability"
}
{
"error": "You can only update availabilities for your own spots"
}
⌘I