Mews Product service orders API

The Product service orders API from Mews — 1 operation(s) for product service orders.

OpenAPI Specification

mews-systems-product-service-orders-api-openapi.yml Raw ↑
openapi: 3.0.4
info:
  title: Mews Booking Engine API (Distributor) Account notes Product service orders API
  version: v1
  description: The Mews Booking Engine API (historically the Distributor API, served from /api/distributor/v1) lets developers build guest-facing booking engines that create reservations directly in Mews. It exposes enterprise configuration, availability, pricing, products, vouchers, payment cards, and reservation group creation for front-end client consumption.
  x-generated-from: documentation
  x-source-url: https://api.mews.com/Swagger/distributor/swagger.json
  x-last-validated: '2026-06-02'
servers:
- url: https://api.mews.com
  description: Production
- url: https://api.mews-demo.com
  description: Demo / sandbox
security:
- MewsClientToken: []
  MewsAccessToken: []
tags:
- name: Product service orders
paths:
  /api/connector/v1/productServiceOrders/getAll:
    post:
      tags:
      - Product service orders
      summary: Mews Get All Product Service Orders
      description: Returns all product service orders associated with the given enterprise. This operation uses [Pagination](https://mews-systems.gitbook.io/connector-api/guidelines/pagination/) and supports [Portfolio Access Tokens](https://mews-systems.gitbook.io/connector-api/concepts/multi-property/).
      operationId: productServiceOrders_getAll
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProductServiceOrderFilterParameters'
            example:
              ClientToken: E0D439EE522F44368DC78E1BFB03710C-D24FB11DBE31D4621C4817E028D9E1D
              AccessToken: C66EF7B239D24632943D115EDE9CB810-EA00F8FD8294692C940F6B5A8F9453D
              Client: Sample Client 1.0.0
              ProductServiceOrderIds:
              - 9e6d4492-315b-4089-b9d6-5b1bd2eddc1b
              ServiceIds:
              - ae8da28c-e8a4-4141-9df0-8c998976c691
              - 6b02d015-47ac-4c41-8e9f-5b4db61d4284
              LinkedReservationIds:
              - 0f515589-99b4-423d-b83a-b237009f0509
              - b7a3f5cb-1e69-4a5f-a069-10f461996d7f
              UpdatedUtc:
                StartUtc: '2023-04-01T00:00:00Z'
                EndUtc: '2023-05-05T00:00:00Z'
              States:
              - Confirmed
              - Started
              Limitation:
                Count: 10
                Cursor: 819e3435-7d5e-441f-bc68-76d89c69b8f5
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductServiceOrderResult'
              example:
                ProductServiceOrders:
                - Id: 9e6d4492-315b-4089-b9d6-5b1bd2eddc1b
                  ServiceId: ae8da28c-e8a4-4141-9df0-8c998976c691
                  AccountId: fadd5bb6-b428-45d5-94f8-fd0d89fece6d
                  AccountType: Customer
                  CreatorProfileId: 3cd637ef-4728-47f9-8fb1-afb900c9cdcf
                  UpdaterProfileId: 122fc063-ec6e-4198-b8db-6b168a59ffae
                  BookerId: bccdafd1-3e44-439d-861f-341526b597a9
                  Number: '52'
                  State: Confirmed
                  Origin: Connector
                  CommanderOrigin: null
                  OriginDetails: null
                  CreatedUtc: '2023-04-23T14:58:02Z'
                  UpdatedUtc: '2023-04-23T14:58:02Z'
                  CancelledUtc: null
                  VoucherId: null
                  BusinessSegmentId: null
                  LinkedReservationId: 0f515589-99b4-423d-b83a-b237009f0509
                  Options:
                    OwnerCheckedIn: true
                    AllCompanionsCheckedIn: true
                    AnyCompanionCheckedIn: true
                    ConnectorCheckIn: true
                Cursor: 9e6d4492-315b-4089-b9d6-5b1bd2eddc1b
        '400':
          description: Error caused by the client app, e.g. in case of malformed request or invalid identifier of a resource. In most cases, such an error signifies a bug in the client app (consumer of the API).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
              examples:
                ProductServiceOrdersGetAll400Example:
                  summary: Default productServiceOrders_getAll 400 response
                  x-microcks-default: true
                  value:
                    Message: string
                    RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
                    Details: string
        '401':
          description: Error caused by usage of invalid ClientToken, AccessToken, or you may not have the necessary permission to use the endpoint.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
              examples:
                ProductServiceOrdersGetAll401Example:
                  summary: Default productServiceOrders_getAll 401 response
                  x-microcks-default: true
                  value:
                    Message: string
                    RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
                    Details: string
        '403':
          description: Server error that should be reported to the end user of the client app. Happens for example when the server-side validation fails or when a business-logic check is violated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
              examples:
                ProductServiceOrdersGetAll403Example:
                  summary: Default productServiceOrders_getAll 403 response
                  x-microcks-default: true
                  value:
                    Message: string
                    RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
                    Details: string
        '408':
          description: Error caused by heavy request that takes too long to process (typically tens of seconds). To get around this, request data in smaller batches. For more information, see [Request timeouts](https://mews-systems.gitbook.io/connector-api/guidelines/requests#request-timeouts)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
              examples:
                ProductServiceOrdersGetAll408Example:
                  summary: Default productServiceOrders_getAll 408 response
                  x-microcks-default: true
                  value:
                    Message: string
                    RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
                    Details: string
        '204':
          description: Server has successfully fulfilled the request and there is no additional information to send back.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
              examples:
                ProductServiceOrdersGetAll204Example:
                  summary: Default productServiceOrders_getAll 204 response
                  x-microcks-default: true
                  value:
                    Message: string
                    RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
                    Details: string
        '429':
          description: Error caused by too many requests sent in a given amount of time. Response contains `Retry-After` header indicating how long the user agent should wait before making a follow-up request. For more information, see [Request limits](https://mews-systems.gitbook.io/connector-api/guidelines/requests#request-limits).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
              examples:
                ProductServiceOrdersGetAll429Example:
                  summary: Default productServiceOrders_getAll 429 response
                  x-microcks-default: true
                  value:
                    Message: string
                    RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
                    Details: string
        '500':
          description: Unexpected error on the Mews side. This may be due to a software fault. If such a situation occurs, the error will be logged and the development team notified, however you can raise an issue through GitHub on our [documentation repository](https://github.com/MewsSystems/gitbook-connector-api).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConnectorApiExceptionResult'
              examples:
                ProductServiceOrdersGetAll500Example:
                  summary: Default productServiceOrders_getAll 500 response
                  x-microcks-default: true
                  value:
                    Message: string
                    RequestId: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
                    Details: string
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    ConnectorApiExceptionResult:
      title: ConnectorApiExceptionResult
      type: object
      properties:
        Message:
          type: string
          nullable: true
          example: string
        RequestId:
          type: string
          nullable: true
          example: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
        Details:
          nullable: true
          example: string
      additionalProperties: false
      x-schema-id: ConnectorApiExceptionResult
    ServiceOrderOptions:
      title: Service Order Options
      required:
      - AllCompanionsCheckedIn
      - AnyCompanionCheckedIn
      - ConnectorCheckIn
      - OwnerCheckedIn
      type: object
      properties:
        OwnerCheckedIn:
          type: boolean
          description: Owner of the reservation checked in.
          example: true
        AllCompanionsCheckedIn:
          type: boolean
          description: All companions of the reservation checked in.
          example: true
        AnyCompanionCheckedIn:
          type: boolean
          description: Any of the companions of the reservation checked in.
          example: true
        ConnectorCheckIn:
          type: boolean
          description: Check in was done via Connector API.
          example: true
      additionalProperties: false
      x-schema-id: ServiceOrderOptions
    ServiceOrder:
      title: Product service order
      required:
      - AccountId
      - AccountType
      - CreatedUtc
      - CreatorProfileId
      - Id
      - Number
      - Options
      - Origin
      - ServiceId
      - State
      - UpdatedUtc
      - UpdaterProfileId
      type: object
      properties:
        Id:
          type: string
          description: Unique identifier of the product service order
          format: uuid
          example: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
        ServiceId:
          type: string
          description: Unique identifier of the `Service` that product service order is made against.
          format: uuid
          example: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
        AccountId:
          type: string
          description: Unique identifier of the Customer or Company who owns the product service order.
          format: uuid
          example: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
        AccountType:
          allOf:
          - $ref: '#/components/schemas/AccountTypeEnum'
          description: 'A discriminator specifying the type of account, e.g. `Customer` or `Company`.


            Company


            Customer'
          example: string
        CreatorProfileId:
          type: string
          description: Unique identifier of the user who created the product service order.
          format: uuid
          example: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
        UpdaterProfileId:
          type: string
          description: Unique identifier of the user who updated the product service order.
          format: uuid
          example: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
        BookerId:
          type: string
          description: Unique identifier of the Customer on whose behalf the service order was made.
          format: uuid
          nullable: true
          example: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
        Number:
          minLength: 1
          type: string
          description: Confirmation number of the service order in Mews.
          example: '1001'
        State:
          title: Service order state
          allOf:
          - $ref: '#/components/schemas/ServiceOrderStateEnum'
          description: 'State of the product service order.


            Inquired (Confirmed neither by the customer nor enterprise.)


            Confirmed (Confirmed by both parties, before check-in.)


            Started (Checked in.)


            Processed (Checked out.)


            Canceled (Canceled.)


            Optional (Confirmed by enterprise but not by the guest (the enterprise is holding resource for the guest).)


            Requested (Confirmed by the customer but not by the enterprise (waitlist).)'
          x-enumNames:
          - Inquired
          - Confirmed
          - Started
          - Processed
          - Canceled
          - Optional
          - Requested
          x-enumDescriptions:
          - Confirmed neither by the customer nor enterprise.
          - Confirmed by both parties, before check-in.
          - Checked in.
          - Checked out.
          - Canceled.
          - Confirmed by enterprise but not by the guest (the enterprise is holding resource for the guest).
          - Confirmed by the customer but not by the enterprise (waitlist).
          example: string
        Origin:
          title: Service order origin
          allOf:
          - $ref: '#/components/schemas/ServiceOrderOriginEnum'
          description: 'Origin of the product service order.


            Distributor (From the Mews Booking Engine or Booking Engine API.)


            ChannelManager (From a channel manager.)


            Commander (From Mews Operations.)


            Import (From an import process.)


            Connector (From the Mews Connector API.)


            Navigator (From Mews Guest Services.)'
          x-enumNames:
          - Distributor
          - ChannelManager
          - Commander
          - Import
          - Connector
          - Navigator
          x-enumDescriptions:
          - From the Mews Booking Engine or Booking Engine API.
          - From a channel manager.
          - From Mews Operations.
          - From an import process.
          - From the Mews Connector API.
          - From Mews Guest Services.
          example: string
        CommanderOrigin:
          allOf:
          - $ref: '#/components/schemas/ServiceOrderCommanderOriginEnum'
          description: 'Further detail about origin in case of Origin Commander.


            InPerson


            Channel


            Phone


            Email


            Website


            Message


            CallCenter


            RoomingList'
          nullable: true
          example: string
        OriginDetails:
          type: string
          description: Details about the product service order Origin.
          nullable: true
          example: string
        CreatedUtc:
          minLength: 1
          type: string
          description: Creation date and time of the product service order in UTC timezone in ISO 8601 format.
          format: date-time
          example: '2026-06-02T14:30:00Z'
        UpdatedUtc:
          minLength: 1
          type: string
          description: Last update date and time of the product service order in UTC timezone in ISO 8601 format.
          format: date-time
          example: '2026-06-02T14:30:00Z'
        CancelledUtc:
          type: string
          description: Cancellation date and time in UTC timezone in ISO 8601 format.
          format: date-time
          nullable: true
          example: '2026-06-02T14:30:00Z'
        VoucherId:
          type: string
          description: Unique identifier of the Voucher that has been used to create product service order.
          format: uuid
          nullable: true
          example: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
        BusinessSegmentId:
          type: string
          description: Identifier of the Business segment.
          format: uuid
          nullable: true
          example: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
        LinkedReservationId:
          type: string
          description: Identifier of the linked Reservation.
          format: uuid
          nullable: true
          example: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
        Options:
          title: Service order options
          allOf:
          - $ref: '#/components/schemas/ServiceOrderOptions'
          description: Options of the service order.
          example: string
      additionalProperties: false
      x-schema-id: ServiceOrder
    Limitation:
      title: Limitation
      required:
      - Count
      type: object
      properties:
        Count:
          type: integer
          format: int32
          example: 1
        Cursor:
          type: string
          format: uuid
          nullable: true
          example: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
      additionalProperties: false
      description: Limitation on the quantity of data returned.
      x-schema-id: Limitation
    TimeFilterInterval:
      title: Time interval
      type: object
      properties:
        StartUtc:
          type: string
          format: date-time
          nullable: true
          example: '2026-06-02T14:30:00Z'
        EndUtc:
          type: string
          format: date-time
          nullable: true
          example: '2026-06-02T14:30:00Z'
      additionalProperties: false
      description: "When a time interval is used for **filtering** (for example in parameters such as `CreatedUtc.StartUtc` / `CreatedUtc.EndUtc`), the following rules apply:\r\n\r\n- **Start equals End (equality mode)**  \r\n  If `StartUtc` and `EndUtc` are exactly the same timestamp, the filter is treated as an equality check for that precise moment in time:\r\n  \r\n  ```\r\n  CreatedUtc == StartUtc\r\n  ```\r\n  \r\n  This does not represent an interval; only records with `CreatedUtc` equal to that exact instant are returned.\r\n\r\n- **Start differs from End (interval mode)**  \r\n  If `StartUtc` and `EndUtc` are different, the filter is evaluated as a half-open interval:\r\n  \r\n  ```\r\n  StartUtc <= CreatedUtc < EndUtc\r\n  ```\r\n  \r\n  In other words, the start is inclusive and the end is exclusive.\r\n\r\nMake sure your integration takes inclusive Start / exclusive End behavior of time intervals into account so that no records at the boundaries are omitted."
      x-schema-id: TimeFilterInterval
    ProductServiceOrderFilterParameters:
      title: ProductServiceOrderFilterParameters
      required:
      - AccessToken
      - Client
      - ClientToken
      - Limitation
      - ServiceIds
      type: object
      properties:
        ClientToken:
          minLength: 1
          type: string
          description: Token identifying the client application.
          example: string
        AccessToken:
          minLength: 1
          type: string
          description: Access token of the client application.
          example: string
        Client:
          minLength: 1
          type: string
          description: Name and version of the client application.
          example: string
        Limitation:
          allOf:
          - $ref: '#/components/schemas/Limitation'
          description: Limitation on the quantity of data returned and optional Cursor for the starting point of data.
          example: string
        EnterpriseIds:
          maxItems: 1000
          minItems: 1
          type: array
          items:
            type: string
            format: uuid
          description: Unique identifiers of the Enterprises. If not specified, the operation returns data for all enterprises within scope of the Access Token.
          nullable: true
        ProductServiceOrderIds:
          maxItems: 1000
          minItems: 1
          type: array
          items:
            type: string
            format: uuid
          description: Unique identifiers of the Product service order.
          nullable: true
        ServiceIds:
          maxItems: 1000
          minItems: 1
          type: array
          items:
            type: string
            format: uuid
          description: Unique identifiers of the `Service`.
        AccountIds:
          maxItems: 1000
          minItems: 1
          type: array
          items:
            type: string
            format: uuid
          description: Unique identifiers of the Customer or Company who owns the product service order.
          nullable: true
        LinkedReservationIds:
          maxItems: 1000
          minItems: 1
          type: array
          items:
            type: string
            format: uuid
          description: Unique identifiers of linked Reservations.
          nullable: true
        UpdatedUtc:
          title: Time interval
          allOf:
          - $ref: '#/components/schemas/TimeFilterInterval'
          description: Interval in which the Product service orders were updated.
          nullable: true
          x-max-interval-in-months: 3
          example: string
        States:
          type: array
          items:
            $ref: '#/components/schemas/ServiceOrderState'
          description: A list of product service order states to filter by.
          nullable: true
      additionalProperties: false
      x-schema-id: ProductServiceOrderFilterParameters
    ProductServiceOrderResult:
      title: ProductServiceOrderResult
      required:
      - ProductServiceOrders
      type: object
      properties:
        ProductServiceOrders:
          type: array
          items:
            $ref: '#/components/schemas/ServiceOrder'
          description: The collection of product service orders.
        Cursor:
          type: string
          description: Unique identifier of the item one newer in time order than the items to be returned. If Cursor is not specified, i.e. null, then the latest or most recent items will be returned.
          format: uuid
          nullable: true
          example: 3edd5f9e-7e64-4f2a-9a0e-b3f200e6c111
      additionalProperties: false
      x-schema-id: ProductServiceOrderResult
    ServiceOrderStateEnum:
      title: Service order state
      enum:
      - Inquired
      - Confirmed
      - Started
      - Processed
      - Canceled
      - Optional
      - Requested
      type: string
      description: '


        Inquired (Confirmed neither by the customer nor enterprise.)


        Confirmed (Confirmed by both parties, before check-in.)


        Started (Checked in.)


        Processed (Checked out.)


        Canceled (Canceled.)


        Optional (Confirmed by enterprise but not by the guest (the enterprise is holding resource for the guest).)


        Requested (Confirmed by the customer but not by the enterprise (waitlist).)'
      x-enumNames:
      - Inquired
      - Confirmed
      - Started
      - Processed
      - Canceled
      - Optional
      - Requested
      x-enumDescriptions:
      - Confirmed neither by the customer nor enterprise.
      - Confirmed by both parties, before check-in.
      - Checked in.
      - Checked out.
      - Canceled.
      - Confirmed by enterprise but not by the guest (the enterprise is holding resource for the guest).
      - Confirmed by the customer but not by the enterprise (waitlist).
    ServiceOrderOriginEnum:
      title: Service order origin
      enum:
      - Distributor
      - ChannelManager
      - Commander
      - Import
      - Connector
      - Navigator
      type: string
      description: '


        Distributor (From the Mews Booking Engine or Booking Engine API.)


        ChannelManager (From a channel manager.)


        Commander (From Mews Operations.)


        Import (From an import process.)


        Connector (From the Mews Connector API.)


        Navigator (From Mews Guest Services.)'
      x-enumNames:
      - Distributor
      - ChannelManager
      - Commander
      - Import
      - Connector
      - Navigator
      x-enumDescriptions:
      - From the Mews Booking Engine or Booking Engine API.
      - From a channel manager.
      - From Mews Operations.
      - From an import process.
      - From the Mews Connector API.
      - From Mews Guest Services.
    AccountTypeEnum:
      title: Account type
      enum:
      - Company
      - Customer
      type: string
      description: 'A discriminator specifying the account type, e.g. `Customer` or `Company`


        Company


        Customer'
      x-enumNames:
      - Company
      - Customer
      x-enumDescriptions:
      - ''
      - ''
    ServiceOrderState:
      title: Service order state
      enum:
      - Inquired
      - Confirmed
      - Started
      - Processed
      - Canceled
      - Optional
      - Requested
      type: string
      x-enumDescriptions:
      - Confirmed neither by the customer nor enterprise.
      - Confirmed by both parties, before check-in.
      - Checked in.
      - Checked out.
      - Canceled.
      - Confirmed by enterprise but not by the guest (the enterprise is holding resource for the guest).
      - Confirmed by the customer but not by the enterprise (waitlist).
    ServiceOrderCommanderOriginEnum:
      title: Commander origin
      enum:
      - InPerson
      - Channel
      - Phone
      - Email
      - Website
      - Message
      - CallCenter
      - RoomingList
      type: string
      description: '


        InPerson


        Channel


        Phone


        Email


        Website


        Message


        CallCenter


        RoomingList'
      x-enumNames:
      - InPerson
      - Channel
      - Phone
      - Email
      - Website
      - Message
      - CallCenter
      - RoomingList
      x-enumDescriptions:
      - ''
      - ''
      - ''
      - ''
      - ''
      - ''
      - ''
      - ''
  securitySchemes:
    MewsClientToken:
      type: apiKey
      in: header
      name: ClientToken
      description: Mews authentication is performed by supplying ClientToken, AccessToken and Client as fields in the JSON request body (not as HTTP headers). This securityScheme is a tooling-compatible representation of the ClientToken credential. ClientToken is unique to your application and identifies the API client.
    MewsAccessToken:
      type: apiKey
      in: header
      name: AccessToken
      description: Tooling-compatible representation of the AccessToken credential, which is supplied in the JSON request body. AccessToken is unique to the connection with a property (enterprise) and identifies the property or properties whose data and services you can access. Portfolio Access Tokens enable multi-property access with a single token.