openapi: 3.0.0
servers:
  - url: https://live-api.letmc.com
info:
  contact:
    x-twitter: agentOSSoftware
  title: agentOS API V3, Diary Call Group
  version: v3-diary
  x-apisguru-categories:
    - ecommerce
  x-logo:
    url: https://twitter.com/agentOSSoftware/profile_image?size=original
  x-origin:
    - format: swagger
      url: https://live-api.letmc.com/swagger/docs/v3-diary
      version: "2.0"
    - format: openapi
      url: https://live-api.letmc.com/swagger/docs/v3-diary
      version: "3.0"
  x-providerName: letmc.com
  x-serviceName: diary
paths:
  "/v3/diary/{shortName}/allocations":
    get:
      deprecated: false
      operationId: DiaryController_GetAllocations
      parameters:
        - description: The unique client short-name
          in: path
          name: shortName
          required: true
          schema:
            type: string
        - description: The date to search from
          in: query
          name: preferredDate
          required: true
          schema:
            format: date-time
            type: string
        - description: The unique appointment type identifier
          in: query
          name: appointmentType
          required: true
          schema:
            type: string
        - description: Sales or Lettings property?
          in: query
          name: lettings
          required: false
          schema:
            type: boolean
        - description: The unique property identifier (Sales or Lettings) determines branch and property type
          in: query
          name: propertyIdentifier
          required: false
          schema:
            type: string
        - description: Branch ID to check appointments (required if no property submitted)
          in: query
          name: branchID
          required: false
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/DiaryBookingModel"
                type: array
            application/xml:
              schema:
                items:
                  $ref: "#/components/schemas/DiaryBookingModel"
                type: array
            text/json:
              schema:
                items:
                  $ref: "#/components/schemas/DiaryBookingModel"
                type: array
            text/xml:
              schema:
                items:
                  $ref: "#/components/schemas/DiaryBookingModel"
                type: array
          description: OK
      summary: Get a list of all available allocations for a date + 7 days for a specified appointment type
      tags:
        - DiaryController
  "/v3/diary/{shortName}/appointment":
    delete:
      deprecated: false
      operationId: DiaryController_DeleteAppointment
      parameters:
        - description: The unique client short-name
          in: path
          name: shortName
          required: true
          schema:
            type: string
        - description: The unique appointment id
          in: query
          name: appointmentID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                type: string
            application/xml:
              schema:
                type: string
            text/json:
              schema:
                type: string
            text/xml:
              schema:
                type: string
          description: OK
      summary: Delete an existing appointment using its unique identifier
      tags:
        - DiaryController
    get:
      deprecated: false
      operationId: DiaryController_GetAppointment
      parameters:
        - description: Company short name
          in: path
          name: shortName
          required: true
          schema:
            type: string
        - description: Appointment ID
          in: query
          name: appointmentID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentModel"
            text/json:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentModel"
          description: OK
      summary: Get an appointment by ID
      tags:
        - DiaryController
    post:
      deprecated: false
      operationId: DiaryController_PostAppointment
      parameters:
        - description: The unique client short-name
          in: path
          name: shortName
          required: true
          schema:
            type: string
        - description: The unique property identifier (Sales or Lettings)
          explode: true
          in: query
          name: propertyIdentifier
          required: true
          schema:
            items:
              type: string
            type: array
        - description: Sales or Lettings property?
          in: query
          name: lettings
          required: false
          schema:
            type: boolean
      requestBody:
        $ref: "#/components/requestBodies/DiaryAppointmentDetails"
      responses:
        "200":
          content:
            application/json:
              schema:
                type: string
            application/xml:
              schema:
                type: string
            text/json:
              schema:
                type: string
            text/xml:
              schema:
                type: string
          description: OK
      summary: Post an appointment into a valid diary allocation
      tags:
        - DiaryController
    put:
      deprecated: false
      operationId: DiaryController_PutAppointment
      parameters:
        - description: The unique client short-name
          in: path
          name: shortName
          required: true
          schema:
            type: string
        - description: The unique appointment id
          in: query
          name: appointmentID
          required: true
          schema:
            type: string
        - description: Sales or Lettings property?
          in: query
          name: lettings
          required: false
          schema:
            type: boolean
        - description: Sales or Lettings property?
          in: query
          name: AllowMarketingCorrespondence
          required: false
          schema:
            type: boolean
      requestBody:
        $ref: "#/components/requestBodies/DiaryAppointmentDetails"
      responses:
        "200":
          content:
            application/json:
              schema:
                type: string
            application/xml:
              schema:
                type: string
            text/json:
              schema:
                type: string
            text/xml:
              schema:
                type: string
          description: OK
      summary: Update an existing appointment using its unique identifier
      tags:
        - DiaryController
  "/v3/diary/{shortName}/appointment/feedback":
    post:
      deprecated: false
      operationId: DiaryController_AddFeedback
      parameters:
        - description: The unique client short-name
          in: path
          name: shortName
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FeedbackSubmissionModel"
          application/x-www-form-urlencoded:
            schema:
              $ref: "#/components/schemas/FeedbackSubmissionModel"
          application/xml:
            schema:
              $ref: "#/components/schemas/FeedbackSubmissionModel"
          text/json:
            schema:
              $ref: "#/components/schemas/FeedbackSubmissionModel"
          text/xml:
            schema:
              $ref: "#/components/schemas/FeedbackSubmissionModel"
        description: Feedback submission model
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                type: string
            application/xml:
              schema:
                type: string
            text/json:
              schema:
                type: string
            text/xml:
              schema:
                type: string
          description: OK
      summary: Submit appointment feedback
      tags:
        - DiaryController
  "/v3/diary/{shortName}/appointment/{appointmentID}/cancel":
    patch:
      deprecated: false
      operationId: DiaryController_CancelAppointment
      parameters:
        - description: The unique client short-name
          in: path
          name: shortName
          required: true
          schema:
            type: string
        - description: The unique appointment id
          in: path
          name: appointmentID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                type: string
            application/xml:
              schema:
                type: string
            text/json:
              schema:
                type: string
            text/xml:
              schema:
                type: string
          description: OK
      summary: Cancel an existing appointment using its unique identifier
      tags:
        - DiaryController
  "/v3/diary/{shortName}/appointmentsbetweendates":
    get:
      deprecated: false
      operationId: DiaryController_GetAppointmentsBetweenDates
      parameters:
        - description: The unique client short-name
          in: path
          name: shortName
          required: true
          schema:
            type: string
        - description: The unique ID of the Branch
          in: query
          name: branchID
          required: true
          schema:
            type: string
        - description: The search from date
          in: query
          name: startDate
          required: true
          schema:
            format: date-time
            type: string
        - description: The search to date
          in: query
          name: endDate
          required: true
          schema:
            format: date-time
            type: string
        - description: The appointment IDs to search for
          explode: true
          in: query
          name: appointmentTypesToSearch
          required: true
          schema:
            items:
              type: string
            type: array
        - description: The index of the first item to return
          in: query
          name: offset
          required: true
          schema:
            format: int32
            type: integer
        - description: The maximum number of items to return (up to 1000 per request)
          in: query
          name: count
          required: true
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentModelResults"
            application/xml:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentModelResults"
            text/json:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentModelResults"
            text/xml:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentModelResults"
          description: OK
      summary: A collection of diary appointments linked to a company filtered between specific dates and by appointment type
      tags:
        - DiaryController
  "/v3/diary/{shortName}/appointmenttypes":
    get:
      deprecated: false
      operationId: DiaryController_GetAppointmentTypes
      parameters:
        - description: The unique client short-name
          in: path
          name: shortName
          required: true
          schema:
            type: string
        - description: The index of the first item to return
          in: query
          name: offset
          required: true
          schema:
            format: int32
            type: integer
        - description: The maximum number of items to return (up to 1000 per request)
          in: query
          name: count
          required: true
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentTypeModelResults"
            application/xml:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentTypeModelResults"
            text/json:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentTypeModelResults"
            text/xml:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentTypeModelResults"
          description: OK
      summary: A collection of all diary appointment types
      tags:
        - DiaryController
  "/v3/diary/{shortName}/company/branches":
    get:
      deprecated: false
      operationId: CompanyController_GetBranches
      parameters:
        - description: The unique client short-name
          in: path
          name: shortName
          required: true
          schema:
            type: string
        - description: The index of the first item to return
          in: query
          name: offset
          required: true
          schema:
            format: int32
            type: integer
        - description: The maximum number of items to return (up to 1000 per request)
          in: query
          name: count
          required: true
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AdvertisingBranchModelResults"
            application/xml:
              schema:
                $ref: "#/components/schemas/AdvertisingBranchModelResults"
            text/json:
              schema:
                $ref: "#/components/schemas/AdvertisingBranchModelResults"
            text/xml:
              schema:
                $ref: "#/components/schemas/AdvertisingBranchModelResults"
          description: OK
      summary: All branches defined for a company
      tags:
        - CompanyController
  "/v3/diary/{shortName}/company/branches/{branchID}":
    get:
      deprecated: false
      parameters:
        - description: The unique client short-name
          in: path
          name: shortName
          required: true
          schema:
            type: string
        - description: The unique ID of the Branch
          in: path
          name: branchID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AdvertisingBranchModel"
            application/xml:
              schema:
                $ref: "#/components/schemas/AdvertisingBranchModel"
            text/json:
              schema:
                $ref: "#/components/schemas/AdvertisingBranchModel"
            text/xml:
              schema:
                $ref: "#/components/schemas/AdvertisingBranchModel"
          description: OK
      summary: Get a specific branch given its unique Object ID (OID)
      tags:
        - CompanyController
  "/v3/diary/{shortName}/recurringappointment":
    get:
      deprecated: false
      operationId: DiaryController_GetRecurringAppointments
      parameters:
        - description: The unique client short-name
          in: path
          name: shortName
          required: true
          schema:
            type: string
        - description: The unique ID of the Branch
          in: query
          name: branchID
          required: true
          schema:
            type: string
        - description: The appointment IDs to search for
          explode: true
          in: query
          name: appointmentTypesToSearch
          required: true
          schema:
            items:
              type: string
            type: array
        - description: The index of the first item to return
          in: query
          name: offset
          required: true
          schema:
            format: int32
            type: integer
        - description: The maximum number of items to return (up to 1000 per request)
          in: query
          name: count
          required: true
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentModelResults"
            application/xml:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentModelResults"
            text/json:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentModelResults"
            text/xml:
              schema:
                $ref: "#/components/schemas/DiaryAppointmentModelResults"
          description: OK
      summary: Retrieves all recurring appointments:-
      tags:
        - DiaryController
  "/v3/diary/{shortname}/{branchID}/guest/search":
    get:
      deprecated: false
      operationId: DiaryController_SearchGuest
      parameters:
        - description: ""
          in: path
          name: shortname
          required: true
          schema:
            type: string
        - description: ""
          in: path
          name: branchID
          required: true
          schema:
            type: string
        - description: ""
          in: query
          name: forename
          required: true
          schema:
            type: string
        - description: ""
          in: query
          name: emailaddress
          required: true
          schema:
            type: string
        - description: ""
          in: query
          name: surname
          required: true
          schema:
            type: string
        - description: ""
          in: query
          name: offset
          required: true
          schema:
            format: int32
            type: integer
        - description: ""
          in: query
          name: count
          required: true
          schema:
            format: int32
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GuestDiaryParametersResultsModel"
            text/json:
              schema:
                $ref: "#/components/schemas/GuestDiaryParametersResultsModel"
          description: OK
      summary: Match Guest Parameters with existing applicants
      tags:
        - DiaryController
components:
  requestBodies:
    DiaryAppointmentDetails:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/DiaryAppointmentDetails"
        application/x-www-form-urlencoded:
          schema:
            $ref: "#/components/schemas/DiaryAppointmentDetails"
        application/xml:
          schema:
            $ref: "#/components/schemas/DiaryAppointmentDetails"
        text/json:
          schema:
            $ref: "#/components/schemas/DiaryAppointmentDetails"
        text/xml:
          schema:
            $ref: "#/components/schemas/DiaryAppointmentDetails"
      description: The appointment details model
      required: true
  schemas:
    AdvertisingBranchModel:
      description: Defines a single branch of a client.
      properties:
        Address1:
          description: Branch address line 1.
          type: string
        Address2:
          description: Branch address line 2.
          type: string
        Address3:
          description: Branch address line 3.
          type: string
        Address4:
          description: Branch address line 4.
          type: string
        CompanyName:
          description: The relevant company name, if not the one specified on the branch then the one on company.
          type: string
        County:
          description: County
          type: string
        EMailAddress:
          description: Branch email address.
          type: string
        ETag:
          description: A unique identifier defining the object and change revision.
          type: string
        FaxPhone:
          description: Branch fax phone number.
          type: string
        LandPhone:
          description: Branch land phone number.
          type: string
        Name:
          description: The branch name.
          type: string
        OID:
          description: The unique Object ID (OID).
          type: string
        Postcode:
          description: Branch address postcode.
          type: string
        WebAddress:
          description: Branch web address.
          type: string
      type: object
    AdvertisingBranchModelResults:
      description: Holds results from a paged query returning BranchModel values
      properties:
        Count:
          description: The total number of results available for all pages
          format: int32
          type: integer
        Data:
          description: The resulting data returned from the paged query range
          items:
            $ref: "#/components/schemas/AdvertisingBranchModel"
          type: array
      type: object
    BaseHypermediaLink:
      description: Hypermedia Link Class
      properties:
        Href:
          description: The hypermedia href
          type: string
        Method:
          description: The http method type
          type: string
        Relationship:
          description: The hypermedia link relationship to current result object.
          type: string
      type: object
    DiaryAppointmentDetails:
      description: Submission Model - Structure to submit the appointment details
      properties:
        AllocationDetails:
          $ref: "#/components/schemas/DiaryBookingModel"
        AppointmentType:
          description: The Appointment Type ID
          type: string
        ExtraComments:
          description: Additional appointment comments
          type: string
        Guests:
          description: A collection of guests linked to the appointment. If none leave empty
          items:
            $ref: "#/components/schemas/DiaryGuestDetails"
          type: array
        Subject:
          description: The subject of the appointment
          type: string
      type: object
    DiaryAppointmentModel:
      description: Represents a single diary appointment for a staff member.
      properties:
        AppointmentType:
          description: The diary appointment type.
          type: string
        Cancelled:
          description: Whether the appointment has been cancelled.
          type: boolean
        Comment:
          description: The appointment comments text.
          type: string
        CreatedAt:
          description: The date/time this appointment was created.
          format: date-time
          type: string
        CreatedBy:
          description: The staff member that created this appointment.
          type: string
        ETag:
          description: A unique identifier defining the object and change revision.
          type: string
        End:
          description: The end date/time of this appointment.
          format: date-time
          type: string
        LinkedGuest:
          description: Linked Guest Model:-
          items:
            $ref: "#/components/schemas/LinkedGuestModel"
          readOnly: true
          type: array
        LinkedProperties:
          description: A collection of properties linked to the appointment:-
          items:
            $ref: "#/components/schemas/LinkedPropertiesModel"
          type: array
        NextRecurringDate:
          description: Date appointment next repeats:-
          format: date-time
          type: string
        OID:
          description: The unique Object ID (OID).
          type: string
        Recurrence:
          description: The reccurrence interval for the appointment:-
          format: int32
          type: integer
        RecurrenceType:
          description: The type of recurrence:-
          type: string
        RemindAt:
          description: The date/time to remind the staff member of this appointment.
          format: date-time
          type: string
        RemindBefore:
          description: The number of minutes before the appointment start date/time to remind the staff member. -1 means don't remind.
          enum:
            - Min
            - Min2
            - Min5
            - Min10
            - Min15
            - Min30
            - Min45
            - Hour
            - Hour2
            - Hour3
            - Hour6
            - Hour12
            - Day
            - Day2
            - Day3
            - Week
            - NoReminder
          type: string
        Staff:
          description: The staff member holding this appointment.
          type: string
        Start:
          description: The start date/time of this appointment.
          format: date-time
          type: string
        Subject:
          description: The appointment subject text.
          type: string
      type: object
    DiaryAppointmentModelResults:
      description: Holds results from a paged query returning DiaryAppointmentModel values
      properties:
        Count:
          description: The total number of results available for all pages
          format: int32
          type: integer
        Data:
          description: The resulting data returned from the paged query range
          items:
            $ref: "#/components/schemas/DiaryAppointmentModel"
          type: array
      type: object
    DiaryAppointmentTypeModel:
      description: Represents a diary appointment type.
      properties:
        ETag:
          description: A unique identifier defining the object and change revision.
          type: string
        Name:
          description: The appointment type name.
          type: string
        OID:
          description: The unique Object ID (OID).
          type: string
        SystemType:
          description: The appointment system type.
          enum:
            - Viewing
            - ViewAndValue
            - OpeningInspection
            - InterimInspection
            - ClosingInspection
            - SalesAppraisal
            - Custom
          type: string
      type: object
    DiaryAppointmentTypeModelResults:
      description: Holds results from a paged query returning DiaryAppointmentTypeModel values
      properties:
        Count:
          description: The total number of results available for all pages
          format: int32
          type: integer
        Data:
          description: The resulting data returned from the paged query range
          items:
            $ref: "#/components/schemas/DiaryAppointmentTypeModel"
          type: array
      type: object
    DiaryBookingModel:
      description: Represents a viewing booking slot
      properties:
        End:
          description: The end time of the booking
          format: date-time
          type: string
        StaffID:
          description: The unique ID of the staff member this booking is with
          type: string
        StaffName:
          description: The name of the staff member this booking is with
          type: string
        Start:
          description: The start time of the booking
          format: date-time
          type: string
      type: object
    DiaryGuestDetails:
      description: Submission Model - Structure to submit appointment guest details
      properties:
        AllowMarketingCorrespondence:
          description: Marketing Correspondence Preferences
          type: boolean
        EmailAddress:
          description: Email address
          type: string
        Forename:
          description: Forename
          type: string
        MobilePhone:
          description: Mobile phone
          type: string
        OID:
          description: The unique identifier of a user, only submit this is known
          type: string
        Surname:
          description: Surname
          type: string
      type: object
    FeedbackSubmissionModel:
      description: Feedback Submission Model:-
      properties:
        AppointmentID:
          description: Appointment to submit feedback to:-
          type: string
        Feedback:
          description: Feedback to submit:-
          type: string
        PropertyID:
          description: Property to submit feedback to:-
          type: string
      type: object
    GuestDiaryParametersModel:
      description: Guest Diary Parameters Model
      properties:
        ContactMobile:
          description: Guest Mobile Phone
          readOnly: true
          type: string
        EmailAddress:
          description: Guest Email Address
          readOnly: true
          type: string
        Forename:
          description: Guest Forename
          readOnly: true
          type: string
        OID:
          description: Guest OID
          readOnly: true
          type: string
        Surname:
          description: Guest Surname
          readOnly: true
          type: string
      type: object
    GuestDiaryParametersResultsModel:
      description: Contacts Person Model Results:-
      properties:
        Count:
          description: Results count:-
          format: int32
          type: integer
        Data:
          description: Results data:-
          items:
            $ref: "#/components/schemas/GuestDiaryParametersModel"
          type: array
        Links:
          description: Results links:-
          items:
            $ref: "#/components/schemas/BaseHypermediaLink"
          type: array
      type: object
    LatestTenancyModel:
      description: Holds information on the most recent tenancy linked to the property.
      properties:
        AccessArrangements:
          description: Access Arrangements
          readOnly: true
          type: string
        AccessMobile1:
          description: Arrange access Mobile 1
          readOnly: true
          type: string
        AccessMobile2:
          description: Arrange access Mobile 2
          readOnly: true
          type: string
        AccessMobile3:
          description: Arrange access Mobile 3
          readOnly: true
          type: string
        AccessName1:
          description: Arrange access contact name 1
          readOnly: true
          type: string
        AccessName2:
          description: Arrange access contact name 2
          readOnly: true
          type: string
        AccessName3:
          description: Arrange access contact name 3
          readOnly: true
          type: string
        ETag:
          description: ETag
          type: string
        EndDate:
          description: The end date of the Tenancy
          format: date-time
          type: string
        FixedDate:
          description: The fixed date of the Tenancy
          format: date-time
          type: string
        GlobalReference:
          description: The unique global reference of the Tenancy
          type: string
        IsTenancyEnded:
          description: Has the Tenancy ended?
          type: boolean
        IsTenancyProposed:
          description: Is the tenancy Proposed?
          type: boolean
        IsTenancySigned:
          description: Is the tenancy signed?
          type: boolean
        LinkedTenants:
          description: A collection of tenants linked to the tenancy:-
          items:
            $ref: "#/components/schemas/LinkedTenantModel"
          type: array
        OID:
          description: OID
          type: string
        StartDate:
          description: The start date of the Tenancy
          format: date-time
          type: string
      type: object
    LinkedGuestModel:
      description: Holds information on guests
      properties:
        CreatedAt:
          description: Guest Created At:-
          format: date-time
          readOnly: true
          type: string
        Email:
          description: Guest Email:-
          readOnly: true
          type: string
        GlobalReference:
          description: Guest Global Reference:-
          readOnly: true
          type: string
        Mobile:
          description: Guest Mobile:-
          readOnly: true
          type: string
        Name:
          description: Guest Name:-
          readOnly: true
          type: string
        OID:
          description: Guest OID:-
          readOnly: true
          type: string
      type: object
    LinkedLandlordModel:
      description: Holds information on landlords
      properties:
        ETag:
          description: ETag
          type: string
        Email:
          description: Landlord's email address
          type: string
        Forename:
          description: Forename
          type: string
        OID:
          description: OID
          type: string
        PhoneNumber:
          description: Landlord's phone number
          type: string
        Surname:
          description: Surname
          type: string
        Title:
          description: Title
          type: string
      type: object
    LinkedPropertiesModel:
      description: Holds information on linked properties
      properties:
        Address1:
          description: Address 1
          type: string
        Address2:
          description: Address2
          type: string
        Address3:
          description: Address 3
          type: string
        Address4:
          description: Address 4
          type: string
        AddressFlatRoomNumber:
          description: Address Flat Room Number
          type: string
        AddressNumber:
          description: Address Number
          type: string
        ETag:
          description: ETag
          type: string
        LatestTenancy:
          $ref: "#/components/schemas/LatestTenancyModel"
        MainLandlord:
          $ref: "#/components/schemas/LinkedLandlordModel"
        OID:
          description: OID
          type: string
        Postcode:
          description: Postcode
          type: string
      type: object
    LinkedTenantModel:
      description: Holds information on tenants
      properties:
        ETag:
          description: ETag
          type: string
        Email:
          description: Tenant's email address
          type: string
        Forename:
          description: Forename
          type: string
        OID:
          description: OID
          type: string
        PhoneNumber:
          description: Tenant's phone number
          type: string
        Surname:
          description: Surname
          type: string
        Title:
          description: Title
          type: string
      type: object
  securitySchemes:
    apiKey:
      description: ApiKey Authentication
      in: header
      name: ApiKey
      type: apiKey
    basic:
      description: Basic HTTP Authentication
      scheme: basic
      type: http
