Save Reservation and Booking Activity API

Save Reservation and Booking Activity API Endpoint
StoRegister - Login

Save Reservation and Booking Activity

The Save Reservation and Booking Activity endpoint allows the creation of a booking activity to facilitate the move-in process and reserve the storage box. This activity serves as an intermediary step to store tenant information along with the reservation. Subsequent additions such as insurance, services, merchandise, and discounts can be associated with this primary key. The booking activity acts as a central identifier in managing leads through the pipeline to finalize deals, while the reservation ensures the storage box is reserved for the tenant.

Furthermore, within the request payload, users have the flexibility to create a contact or create a contact along with user credentials. Alternatively, if the user is already registered, they can simply provide the contact ID in the contactBookInfo.id property to create the booking activity for the specific contact.

POST
/v1/booking/register/reservation/activity/create
Request Content Type
application/json
Response Content Type
application/json

Request Header

  • Authorization: X-API-Key string required

    X-API-Key is a string of letters and numbers used to authenticate and control access to the API. It can be generated in the StoRegister management application.

Request Body:

  • contactBookInfo object required

    Represents user details, including contact information and property-related details.
    • id unique-identifier

      id refers to the tenant ID, i.e., contact ID. If you pass this ID, the booking activity will be created for the provided contact ID; otherwise, you need to send complete contact information, including name, email, phone number, address information, and all other mandatory details.
    • userName string required

      userName refers to the email ID of the user attempting to log in.
    • password string required

      password refers to the password associated with the username.
    • canCreateLoginCredentials boolean

      The canCreateLoginCredentials property is set to true, indicating that the user is allowed to set login credentials during the registration process. If this property is set to false, then the tenant details will be created as a lead.
    • firstName string required

      firstName refers to the first name of a specific lead or end user (tenant).
      • Minimum length should be 2 characters.
      • Maximum length is up to 60 characters.
    • lastName string required

      lastName refers to the last name of a specific lead or end user (tenant).
      • Minimum length should be 2 characters.
      • Maximum length is up to 60 characters.
    • phoneNumber string required

      phoneNumber refers to the contact number of a specific lead or end user (tenant).
      • Maximum length is up to 15 characters.
    • emailId string required

      emailId refers to the email of a specific lead or end user (tenant).
      • Maximum length is up to 100 characters.
    • address string

      address refers to the address for a specific lead or end user (tenant).
      • Minimum length should be 2 characters.
      • Maximum length is up to 250 characters.
    • city string

      city refers to the city of a specific lead or end user (tenant).
      • Minimum length should be 2 characters.
      • Maximum length is up to 60 characters.
    • region integer

      regionrefers to the Country, State or Province or County ID of a specific lead or end user (tenant).
    • countryId integer

      countryId refers to the country ID of a specific lead or end user (tenant).
    • zipCode string

      zipCode refers to the post/zip code specific to the lead or end user (tenant).
      • Minimum length should be 4 characters.
      • Maximum length is up to 15 characters.
  • taxUserTypeInfoId unique-identifier required

    Refers to the type of user ID (e.g., "General", "Business", "Student").
  • storageInfoId unique-identifier required

    Refers to the storage type ID (e.g., "Unit Storage", "Container Storage").
  • storageGroupInfoId int

    Refers to the grouping category ID for unit sizes (e.g., "Small", "Medium", "Large").
  • storageCategoryInfoId unique-identifier required

    Refers to the selected category ID of the storage for rent.
  • propertyInfoId unique-identifier required

    Refers to the ID of the specific property.
  • paymentPeriod string required

    Refers to the payment period key (e.g., "MONTHLY", "WEEKLY")
  • size float required

    Refers to the unit size.
  • price float required

    Refers to the standard taxable price of the unit.
  • moveInDate string required

    Refers to the actual move-in date in yyyy-MM-dd format.
  • discountInfoId unique-identifier

    Refers to the active discount ID, if any.
  • discountPropertyInfoId unique-identifier

    Refers to the discount ID linked to the property.

Response Payload:

  • succeeded boolean

    Indicates whether the request to save the booking activity and reservation was successful.
  • status string

    Describes the status of the request (e.g., "SUCCESS").
  • data object

    Contains information about the created booking activity and reservation, i.e., ID of the booking activity and reservation.
  • errors null

    Holds error information if applicable. It is null for successful requests.

Request Header

Authorization: X-API-Key --api-key--

API Request

                                            
{
    "contactBookInfo": {
        "userName": "[email protected]",
        "password": "Super@123",
        "canCreateLoginCredentials": true,
        "firstName": "Paul",
        "lastName": "Goddu",
        "email": "[email protected]",
        "phoneNumber": "0435558400",
        "address": "string",
        "city": "Bayberry",
        "region": 208,
        "postalCode": "13090",
        "country": 82,
        "propertyInfoId": "a99c4590-9475-404e-bcbd-6cba2e2b5e16"
      },
    "taxUserTypeInfoId": "0FD594E9-4635-4DB6-9EA9-E04E80BF0B25",
    "storageInfoId": "47fa29c4-738a-42dc-bcb3-6dba1ee7e38e",
    "propertyInfoId": "a99c4590-9475-404e-bcbd-6cba2e2b5e16",
    "paymentPeriod": "MONTHLY",
    "storageGroupInfoId": 0,
    "storageCategoryInfoId": "FB1660C7-4D43-4637-AAD8-5E547E6455EF",
    "discountInfoId": "C453EA01-2E9E-4636-977F-C64555F86F20",
    "discountPropertyInfoId": "6AE2C911-55A0-41FD-875C-529D846C25E0",
    "size": 4,
    "price": 25,
    "moveInDate": "2024-02-05T08:16:31.678Z",
    "invoiceDuration": 0
}
                                            
                                        

API Response

                                            
{
    "data": {
        "activityInfoId": "65353E22-C3A6-4600-9DE4-9813D5ECC6B4",
        "reservationInfoId": "792586f6-d9f5-4fe1-ace2-9cff86f7211b"
    },
    "succeeded": true,
    "status": "SUCCESS",
    "errors": null
}
                                            
                                        

Error Codes

  • INVALID_INPUT_PARAM

    INVALID_INPUT_PARAM refers to input details provided as null.
  • INVALID_CONTACT_BOOK_DETAILS_INFO

    INVALID_CONTACT_BOOK_DETAILS_INFO refers to unmatched contact details.
  • INVALID_PARAM_USER_NAME

    INVALID_PARAM_USER_NAME refers to invalid username.
  • INVALID_PARAM_USER_PASSWORD

    INVALID_PARAM_USER_PASSWORD refers to invalid password.
  • INVALID_PARAM_FIRSTNAME

    INVALID_PARAM_FIRSTNAME refers to invalid first name.
    • Minimum length should be 2 characters.
    • Maximum length is upto 60 characters.
  • INVALID_PARAM_LASTNAME

    INVALID_PARAM_LASTNAME refers to invalid last name.
    • Minimum length should be 2 characters.
    • Maximum length is upto 60 characters.
  • INVALID_PARAM_CONTACT_NUMBER

    INVALID_PARAM_CONTACT_NUMBER refers to invalid contact number.
    • Maximum length is upto 15 characters.
  • INVALID_PARAM_EMAIL_ID

    INVALID_PARAM_EMAIL_ID refers to invalid email id.
    • Maximum length is upto 100 characters.
  • CONTACT_CREATION_FAILED

    CONTACT_CREATION_FAILED means failed to create the contact.
  • INVALID_PARAM_PREPARE_QUOTATION_INPUT

    INVALID_PARAM_PREPARE_QUOTATION_INPUT refers to input details provided as null.
  • INVALID_PARAM_TAX_USER_TYPE_ID

    INVALID_PARAM_TAX_USER_TYPE_ID refers to invalid user type.
  • INVALID_PARAM_PROPERTY_INFO_ID

    INVALID_PARAM_PROPERTY_INFO_ID refers to invalid property ID.
  • INVALID_PARAM_STORAGE_INFO_ID

    INVALID_PARAM_STORAGE_INFO_ID refers to invalid storage ID.
  • INVALID_PARAM_STORAGE_CATEGORY_INFO_ID

    INVALID_PARAM_STORAGE_CATEGORY_INFO_ID refers to invalid category id for the selected storage.
  • INVALID_PARAM_STORAGE_SIZE

    INVALID_PARAM_STORAGE_SIZE refers to an invalid storage size, and the size should be greater than 0.
  • INVALID_DATA_STORAGE_SIZE_PRICE_INFO

    INVALID_DATA_STORAGE_SIZE_PRICE_INFO refers to invalid storage size price details.
  • INVALID_PARAM_PRICE_DETAILS

    INVALID_PARAM_PRICE_DETAILS refers to invalid price details.
  • PRICE_CALCULATION_FAILED

    PRICE_CALCULATION_FAILED refers to a failure in price calculation.
  • PRORATA_SUBSCRIPTION_CALCULATION_FAILED

    PRORATA_SUBSCRIPTION_CALCULATION_FAILED refers to pro-rata subscription amount calculation failure.
  • BILLING_SUBSCRIPTION_CALCULATION_FAILED

    BILLING_SUBSCRIPTION_CALCULATION_FAILED refers to billing subscription amount calculation failure.
  • NO_RECORDS_FOUND

    NO_RECORDS_FOUND means there is no relevant information found.
  • FAILED

    FAILED refers to an unsuccessful API call.
  • SOMETHING_WENT_WRONG

    SOMETHING_WENT_WRONG refers to technical glitch. Please contact administrator.