openapi: 3.2.0 info: title: Mef Search Time Slot API version: 3.0.1 description: 'Operations tagged searchTimeSlot across 2 of this provider''s published API definitions: mef-lso-cantata-appointment-management-openapi.yml, mef-lso-sonata-appointment-management-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: https://{serverBase}/mefApi/cantata/appointment/v3/ variables: serverBase: description: The base of Seller's URL. default: mplify.net - url: https://{serverBase}/mefApi/sonata/appointment/v3/ variables: serverBase: description: The base of Seller's URL. default: mplify.net tags: - name: searchTimeSlot paths: /searchTimeSlot: post: tags: - searchTimeSlot summary: Creates a SearchTimeSlot description: A request by the Buyer to find a set of available time slots for scheduling or rescheduling an Appointment for a Workorder with a Seller Technician. operationId: createSearchTimeSlot parameters: - name: buyerId in: query description: The unique identifier of the organization that is acting as the a Buyer. MUST be specified in the request only when the requester represents more than one Buyer. required: false schema: type: string - name: sellerId in: query description: The unique identifier of the organization that is acting as the Seller. MUST be specified in the request only when responding entity represents more than one Seller. required: false schema: type: string requestBody: description: The Appointment to be created content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/SearchTimeSlot_Create' required: true responses: '201': description: Created (https://tools.ietf.org/html/rfc7231section-6.3.2) content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/SearchTimeSlot' '400': description: Bad Request content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error400' '401': description: Unauthorized content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error401' '403': description: Forbidden content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error403' '422': description: Unprocessable entity due to the business validation problems content: application/json;charset=utf-8: schema: type: array items: $ref: '#/components/schemas/Error422' '500': description: Internal Server Error content: application/json;charset=utf-8: schema: $ref: '#/components/schemas/Error500' servers: - url: https://{serverBase}/mefApi/cantata/appointment/v3/ variables: serverBase: description: The base of Seller's URL. default: mplify.net components: schemas: Error422: description: Unprocessable entity due to a business validation problem. (https://tools.ietf.org/html/rfc4918#section-11.2) allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: description: "One of the following error codes:\n - missingProperty: The property the Seller has expected is not present in the payload\n - invalidValue: The property has an incorrect value\n - invalidFormat: The property value does not comply with the expected value format\n - referenceNotFound: The object referenced by the property cannot be identified in the Seller system\n - unexpectedProperty: Additional property, not expected by the Seller has been provided\n - tooManyRecords: the number of records to be provided in the response exceeds the Seller's threshold.\n - otherIssue: Other problem was identified (detailed information provided in a reason)\n" $ref: '#/components/schemas/Error422Code' propertyPath: description: 'A pointer to a particular property of the payload that caused the validation issue. It is highly recommended that this property should be used. Defined using JavaScript Object Notation (JSON) Pointer (https://tools.ietf.org/html/rfc6901). ' type: string required: - code Error400Code: description: 'One of the following error codes: - missingQueryParameter: The URI is missing a required query-string parameter - missingQueryValue: The URI is missing a required query-string parameter value - invalidQuery: The query section of the URI is invalid. - invalidBody: The request has an invalid body' type: string enum: - missingQueryParameter - missingQueryValue - invalidQuery - invalidBody Error422Code: description: "One of the following error codes:\n - missingProperty: The property the Seller has expected is not present in the payload\n - invalidValue: The property has an incorrect value\n - invalidFormat: The property value does not comply with the expected value format\n - referenceNotFound: The object referenced by the property cannot be identified in the Seller system\n - unexpectedProperty: Additional property, not expected by the Seller has been provided\n - tooManyRecords: the number of records to be provided in the response exceeds the Seller's threshold.\n - otherIssue: Other problem was identified (detailed information provided in a reason)\n" type: string enum: - missingProperty - invalidValue - invalidFormat - referenceNotFound - unexpectedProperty - tooManyRecords - otherIssue SearchTimeSlot_Create: description: This task resource is used to retrieve available time slots. One of this available time slot is after used to create or reschedule an appointment type: object properties: requestedTimeSlot: description: A set of preferred time slots the Buyer is requesting the Seller to verify for availability by a Sellers Technician at the Place referenced in the Appointment Related Entity. For example Monday thru Friday, or a set of specific time slots. type: array items: $ref: '#/components/schemas/TimeSlot' workOrder: description: A reference to a WorkOrder for which the Appointment is created. $ref: '#/components/schemas/WorkOrderRef' required: - requestedTimeSlot - workOrder Error403: description: Forbidden. This code indicates that the server understood the request but refuses to authorize it. (https://tools.ietf.org/html/rfc7231#section-6.5.3) allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: description: 'This code indicates that the server understood the request but refuses to authorize it because of one of the following error codes: - accessDenied: Access denied - forbiddenRequester: Forbidden requester - tooManyUsers: Too many users' $ref: '#/components/schemas/Error403Code' required: - code WorkOrderRef: description: 'A reference to an WorkOrder resource. ' type: object properties: href: description: 'Hyperlink to the referenced WorkOrder. ' type: string id: description: Identifier of the referenced WorkOrder. type: string required: - id TimeSlot: type: object properties: validFor: description: Start date and end date of the timeSlot $ref: '#/components/schemas/TimePeriod' required: - validFor Error401: description: Unauthorized. (https://tools.ietf.org/html/rfc7235#section-3.1) allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: description: 'One of the following error codes: - missingCredentials: No credentials provided. - invalidCredentials: Provided credentials are invalid or expired' $ref: '#/components/schemas/Error401Code' required: - code Error401Code: description: 'One of the following error codes: - missingCredentials: No credentials provided. - invalidCredentials: Provided credentials are invalid or expired' type: string enum: - missingCredentials - invalidCredentials Error400: description: Bad Request. (https://tools.ietf.org/html/rfc7231#section-6.5.1) allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: description: 'One of the following error codes: - missingQueryParameter: The URI is missing a required query-string parameter - missingQueryValue: The URI is missing a required query-string parameter value - invalidQuery: The query section of the URI is invalid. - invalidBody: The request has an invalid body' $ref: '#/components/schemas/Error400Code' required: - code Error403Code: description: 'This code indicates that the server understood the request but refuses to authorize it because of one of the following error codes: - accessDenied: Access denied - forbiddenRequester: Forbidden requester - tooManyUsers: Too many users' type: string enum: - accessDenied - forbiddenRequester - tooManyUsers TimePeriod: description: A period of time, either as a deadline (endDateTime only) a startDateTime only, or both type: object properties: endDateTime: description: End of the time period, using IETC-RFC-3339 format type: string format: date-time startDateTime: description: Start of the time period, using IETC-RFC-3339 format. If you define a start, you must also define an end type: string format: date-time required: - endDateTime - startDateTime Error500: description: Internal Server Error. (https://tools.ietf.org/html/rfc7231#section-6.6.1) allOf: - $ref: '#/components/schemas/Error' - type: object properties: code: description: 'The following error code: - internalError: Internal server error - the server encountered an unexpected condition that prevented it from fulfilling the request.' type: string enum: - internalError required: - code SearchTimeSlot: description: This task resource is used to retrieve available time slots. One of this available time slot is after used to create or reschedule an appointment type: object properties: availableTimeSlot: description: A set of time slots with the availability of a Seller Technician returned by the Seller, which the Buyer may select for creating or rescheduling an Appointment. type: array items: $ref: '#/components/schemas/TimeSlot' requestedTimeSlot: description: A set of preferred time slots the Buyer is requesting the Seller to verify for availability by a Sellers Technician at the Place referenced in the Appointment Related Entity. For example Monday thru Friday, or a set of specific time slots. type: array items: $ref: '#/components/schemas/TimeSlot' workOrder: description: A reference to a WorkOrder for which the Appointment is created. $ref: '#/components/schemas/WorkOrderRef' required: - availableTimeSlot - requestedTimeSlot - workOrder Error: description: 'Standard Class used to describe API response error Not intended to be used directly. The `code` in the HTTP header is used as a discriminator for the type of error returned in runtime. ' type: object properties: reason: description: Text that explains the reason for the error. This can be shown to a client user. type: string maxLength: 255 message: description: Text that provides mode details and corrective actions related to the error. This can be shown to a client user. type: string referenceError: description: URL pointing to documentation describing the error type: string format: uri required: - reason x-refined-from: - mef-lso-cantata-appointment-management-openapi.yml - mef-lso-sonata-appointment-management-openapi.yml