Skip to main content
Update an existing availability schedule to customize when a user is available for bookings.

Endpoint

PATCH /v4/availability/{availabilityId}

Request Headers

HeaderRequiredDescription
AuthorizationYesBearer <your-api-key>
x-meetergo-api-user-idYesUUID of the user who owns the availability
Content-TypeYesapplication/json

Path Parameters

ParameterTypeRequiredDescription
availabilityIdstringYesUUID of the availability schedule
Get the availabilityId from the response when creating a user.

Request Body

FieldTypeDescription
namestringDisplay name for the availability schedule
schedulearrayWeekly schedule with day and time intervals

Examples

Update Weekly Schedule

curl -X PATCH "https://api.meetergo.com/v4/availability/660e8400-e29b-41d4-a716-446655440001" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "x-meetergo-api-user-id: 550e8400-e29b-41d4-a716-446655440000" \
  -H "Content-Type: application/json" \
  -d '{
    "schedule": [
      {
        "dayOfWeek": "monday",
        "intervals": [
          { "from": "08:00", "to": "12:00" },
          { "from": "13:00", "to": "18:00" }
        ]
      },
      {
        "dayOfWeek": "tuesday",
        "intervals": [{ "from": "09:00", "to": "17:00" }]
      },
      {
        "dayOfWeek": "wednesday",
        "intervals": [{ "from": "09:00", "to": "17:00" }]
      },
      {
        "dayOfWeek": "thursday",
        "intervals": [{ "from": "09:00", "to": "17:00" }]
      },
      {
        "dayOfWeek": "friday",
        "intervals": [{ "from": "09:00", "to": "15:00" }]
      }
    ]
  }'

Extended Hours with Lunch Break

{
  "name": "Extended Business Hours",
  "schedule": [
    {
      "dayOfWeek": "monday",
      "intervals": [
        { "from": "07:00", "to": "12:00" },
        { "from": "13:00", "to": "19:00" }
      ]
    },
    {
      "dayOfWeek": "tuesday",
      "intervals": [
        { "from": "07:00", "to": "12:00" },
        { "from": "13:00", "to": "19:00" }
      ]
    },
    {
      "dayOfWeek": "wednesday",
      "intervals": [
        { "from": "07:00", "to": "12:00" },
        { "from": "13:00", "to": "19:00" }
      ]
    },
    {
      "dayOfWeek": "thursday",
      "intervals": [
        { "from": "07:00", "to": "12:00" },
        { "from": "13:00", "to": "19:00" }
      ]
    },
    {
      "dayOfWeek": "friday",
      "intervals": [
        { "from": "07:00", "to": "12:00" },
        { "from": "13:00", "to": "17:00" }
      ]
    }
  ]
}

Part-Time Schedule

{
  "name": "Part-Time Hours",
  "schedule": [
    {
      "dayOfWeek": "monday",
      "intervals": [{ "from": "09:00", "to": "13:00" }]
    },
    {
      "dayOfWeek": "wednesday",
      "intervals": [{ "from": "09:00", "to": "13:00" }]
    },
    {
      "dayOfWeek": "friday",
      "intervals": [{ "from": "09:00", "to": "13:00" }]
    }
  ]
}

Response

Success (200 OK)

{
  "id": "660e8400-e29b-41d4-a716-446655440001",
  "name": "Extended Business Hours",
  "timezone": "Europe/London",
  "schedule": [
    {
      "dayOfWeek": "monday",
      "intervals": [
        { "from": "07:00", "to": "12:00" },
        { "from": "13:00", "to": "19:00" }
      ]
    }
    // ... other days
  ],
  "updatedAt": "2024-01-15T10:30:00Z"
}

Error Responses

404 Not Found

{
  "statusCode": 404,
  "message": "Availability not found",
  "error": "Not Found"
}

400 Bad Request - Invalid Time Format

{
  "statusCode": 400,
  "message": "Invalid time format. Use HH:mm format",
  "error": "Bad Request"
}

Schedule Format Reference

Day of Week Values

  • monday
  • tuesday
  • wednesday
  • thursday
  • friday
  • saturday
  • sunday

Time Interval Rules

  • Times must be in 24-hour format (HH:mm)
  • from must be before to
  • Intervals cannot overlap within the same day
  • Multiple intervals per day allow for breaks
Days not included in the schedule are treated as unavailable. This is useful for blocking weekends or specific days off.