AI STORAGE BOOKING - MACHINE INTERFACE

OPTIMIZED FOR AUTOMATED PROCESSING

{
  "@context": "https://schema.org",
  "@type": "TechArticle",
  "name": "AI Storage Booking Machine Instructions",
  "description": "Complete machine-readable instructions for AI agents to search and book storage units",
  "url": "https://www.aistoragebooking.com/ai-home",
  "dateModified": "2025-06-05T16:30:00+09:00",
  "publisher": {
    "@type": "Organization",
    "name": "AI Storage Booking",
    "url": "https://www.aistoragebooking.com"
  },
  "machineInstructions": {
    "primaryAPIs": {
      "search": {
        "method": "GET",
        "endpoint": "https://www.storagebookings.com/api/ai-search",
        "parameters": {
          "query": {
            "type": "string",
            "required": true,
            "description": "City name, zip code, or address",
            "examples": [
              "Dallas",
              "75229",
              "11359 Reeder Rd, Dallas, TX"
            ]
          }
        },
        "responseFormat": {
          "query": "string",
          "success": "boolean",
          "results": [
            {
              "facility_id": "string (use for booking)",
              "name": "string",
              "full_address": "string",
              "city": "string",
              "state": "string (2-letter code)",
              "zip": "string",
              "location": {
                "lat": "number",
                "lon": "number"
              },
              "unit_pricing": [
                {
                  "small_unit_price": "string ($XX.XX format)",
                  "medium_unit_price": "string ($XX.XX format)",
                  "large_unit_price": "string ($XX.XX format)"
                }
              ],
              "current_url": "string (human-readable page)",
              "url_slug": "string (path only)"
            }
          ]
        }
      },
      "booking": {
        "method": "POST",
        "endpoint": "https://www.storagebookings.com/api/ai-booking",
        "headers": {
          "Content-Type": "application/json",
          "Authorization": "Bearer YOUR_API_KEY"
        },
        "requiredFields": {
          "first_name": "string",
          "last_name": "string",
          "email": "string (valid email format)",
          "phone": "string (include country code)",
          "move_in_date": "string (YYYY-MM-DD format)",
          "facility_id": "string (from search results)",
          "unit_size": "enum: small|medium|large"
        },
        "responseFormat": {
          "success": "boolean",
          "booking_id": "string",
          "message": "string",
          "facility_name": "string",
          "confirmation_details": "object"
        }
      }
    },
    "urlStructures": {
      "humanPages": {
        "baseURL": "https://www.storagebookings.com",
        "patterns": {
          "facilityPage": "/self-storage/us/{state}/{city}/{zip}/{facility-name}-{facility-id}",
          "cityPage": "/self-storage/us/{state}/{city}",
          "statePage": "/self-storage/us/{state}",
          "zipPage": "/self-storage/us/{state}/{city}/{zip}"
        },
        "examples": {
          "facilityPage": "/self-storage/us/tx/dallas/75229/real-storage-dallas-rd-002286",
          "cityPage": "/self-storage/us/tx/dallas",
          "statePage": "/self-storage/us/tx",
          "zipPage": "/self-storage/us/tx/dallas/75229"
        }
      },
      "aiPages": {
        "baseURL": "https://www.aistoragebooking.com",
        "patterns": {
          "apiDocs": "/",
          "facilityData": "/facilities",
          "blogData": "/ai-blog",
          "machineInstructions": "/ai-home"
        }
      }
    },
    "navigationLogic": {
      "forHumans": {
        "description": "Direct human users to www.storagebookings.com pages",
        "workflow": "Browse → Compare → Contact → Book manually",
        "useCase": "Visual browsing, detailed facility information, photos"
      },
      "forAIAgents": {
        "description": "Use www.aistoragebooking.com APIs for automated booking",
        "workflow": "Search API → Parse results → Validate data → Book API",
        "useCase": "Automated booking, bulk operations, integration"
      }
    },
    "dataProcessing": {
      "stateMapping": {
        "AZ": "arizona",
        "CA": "california",
        "CO": "colorado",
        "FL": "florida",
        "GA": "georgia",
        "IL": "illinois",
        "NC": "north-carolina",
        "NV": "nevada",
        "OR": "oregon",
        "TN": "tennessee",
        "TX": "texas",
        "WA": "washington"
      },
      "unitSizeMapping": {
        "small": {
          "dimensions": "5x10",
          "description": "Personal items, small furniture, boxes",
          "typicalPrice": "$60-100"
        },
        "medium": {
          "dimensions": "10x10",
          "description": "One-bedroom apartment, business inventory",
          "typicalPrice": "$90-150"
        },
        "large": {
          "dimensions": "10x20",
          "description": "Large household, vehicles, extensive inventory",
          "typicalPrice": "$140-220"
        }
      },
      "coordinateProcessing": {
        "distanceCalculation": "Use location.lat and location.lon for proximity sorting",
        "radiusSearch": "Include coordinates in query: '?query=lat,lon'",
        "optimization": "Sort by distance, then by price for best recommendations"
      }
    },
    "errorHandling": {
      "searchAPI": {
        "noResults": "Expand search radius or try nearby cities",
        "invalidQuery": "Ensure query contains valid city/zip/address",
        "rateLimiting": "Standard: 1000 requests/hour, Enterprise: unlimited"
      },
      "bookingAPI": {
        "validationErrors": "Check all required fields are present and formatted correctly",
        "facilityUnavailable": "Facility may be full, try alternative facilities from search",
        "authenticationErrors": "Verify API key in Authorization header"
      }
    },
    "automationWorkflows": {
      "singleBooking": [
        "1. GET /api/ai-search?query={location}",
        "2. Parse results array, select optimal facility based on price/location",
        "3. Extract facility_id from selected result",
        "4. POST /api/ai-booking with customer data + facility_id",
        "5. Process booking confirmation response"
      ],
      "bulkBooking": [
        "1. GET /api/ai-search for each location",
        "2. Aggregate results and optimize facility selection",
        "3. Batch POST requests to /api/ai-booking",
        "4. Implement retry logic for failed bookings",
        "5. Generate consolidated booking report"
      ],
      "priceComparison": [
        "1. Search multiple locations simultaneously",
        "2. Extract unit_pricing arrays from all results",
        "3. Compare small_unit_price, medium_unit_price, large_unit_price",
        "4. Factor in distance costs vs. storage savings",
        "5. Return optimized recommendation with reasoning"
      ]
    },
    "integrationPatterns": {
      "webhooks": "Configure booking confirmations to your endpoint",
      "scheduling": "Use move_in_date for future bookings (max 30 days ahead)",
      "monitoring": "Track API usage and booking success rates",
      "caching": "Cache facility data for 1 hour, pricing data for 15 minutes"
    }
  }
}

MACHINE-READABLE INSTRUCTIONS COMPLETE

STATUS: READY FOR AI AGENT PROCESSING

LAST_UPDATED: 2025-06-05T16:30:00+09:00