openapi: 3.0.1 info: title: MarketMan API V3 Accounts Webhooks API description: 'MarketMan provides a JSON REST API for integration with third-party applications such as accounting, ERP, e-commerce, and self-service portals. The V3 API exposes separate Buyer and Vendor surfaces for inventory, items, vendors, purchase orders, invoices/docs, deliveries, recipes/menu costing, POS sales, and webhooks. All operations are HTTP POST that accept and return JSON. Authentication is token-based: call /v3/buyers/auth/GetToken (or the vendor equivalent) with an APIKey and APIPassword to obtain a Token, then send that token on every subsequent request in the AUTH_TOKEN header. Endpoints, request fields, and response shapes here reflect the publicly published MarketMan API V3 Postman documentation; field-level detail not documented publicly is left unconstrained.' termsOfService: https://www.marketman.com/ contact: name: MarketMan url: https://www.marketman.com/ version: '3.0' servers: - url: https://api.marketman.com/v3 description: MarketMan API V3 production base URL security: - AuthToken: [] tags: - name: Webhooks description: Webhook subscriptions for order and account events. paths: /buyers/webhooks/CreateWebhook: post: operationId: createWebhook tags: - Webhooks summary: Create a webhook subscription requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateWebhookRequest' responses: '200': description: Result of the webhook creation. content: application/json: schema: $ref: '#/components/schemas/GenericResponse' /buyers/webhooks/GetWebhooks: post: operationId: getWebhooks tags: - Webhooks summary: List webhook subscriptions requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/BuyerRequest' responses: '200': description: Webhook subscriptions. content: application/json: schema: type: object /buyers/webhooks/GetWebhookEventByOrder: post: operationId: getWebhookEventByOrder tags: - Webhooks summary: Get webhook events by order requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/BuyerRequest' responses: '200': description: Webhook events for the order. content: application/json: schema: type: object /buyers/webhooks/DeleteWebhook: post: operationId: deleteWebhook tags: - Webhooks summary: Delete a webhook subscription requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DeleteWebhookRequest' responses: '200': description: Result of the webhook deletion. content: application/json: schema: $ref: '#/components/schemas/GenericResponse' components: schemas: GenericResponse: type: object properties: IsSuccess: type: boolean ErrorMessage: type: string nullable: true DeleteWebhookRequest: allOf: - $ref: '#/components/schemas/BuyerRequest' - type: object required: - Guid properties: Guid: type: string description: GUID of the webhook to delete. CreateWebhookRequest: allOf: - $ref: '#/components/schemas/BuyerRequest' - type: object required: - Type - URL properties: Type: type: string description: Event type to subscribe to, e.g. "Order create". example: Order create URL: type: string description: Destination URL that will receive webhook payloads. BuyerRequest: type: object required: - BuyerGuid properties: BuyerGuid: type: string description: GUID identifying the buyer account to operate on. securitySchemes: AuthToken: type: apiKey in: header name: AUTH_TOKEN description: Access token returned by GetToken, sent on every authenticated request in the AUTH_TOKEN header.