ShopGo Store API

Store availability, legal and webhook settings

OpenAPI Specification

shopgo-store-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: ShopGo Management Authentication Store API
  version: 1.1.0
  description: 'The ShopGo Management API exposes store setup and administration capabilities equivalent to the functions available through the ShopGo (Makane) merchant dashboard: order, payment, shipment, user, tenant and store-settings management for the MENA eCommerce SaaS platform. All requests and responses use application/json and are wrapped in a result/payload envelope. Authentication is via a dashboard user API key (X-API-KEY header) or a platform master key. This OpenAPI was faithfully generated by the API Evangelist enrichment pipeline from the provider''s published documentation at https://docs.shopgo.me — ShopGo does not publish a machine-readable spec.'
  contact:
    name: ShopGo (Makane)
    url: https://docs.shopgo.me
  x-generated-by: api-evangelist-enrichment
  x-generated-method: generated
  x-source: https://docs.shopgo.me/llms.txt
servers:
- url: https://api.shopgo.me
  description: Production
security:
- UserApiKey: []
tags:
- name: Store
  description: Store availability, legal and webhook settings
paths:
  /v1/management/order/available:
    get:
      operationId: getStoreAvailability
      tags:
      - Store
      summary: Get store availability
      description: Get whether the store is available to receive new orders.
      responses:
        '200':
          description: Availability retrieved
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: string
                  payload:
                    type: object
                    properties:
                      available:
                        type: boolean
    patch:
      operationId: overrideStoreAvailability
      tags:
      - Store
      summary: Override store availability
      description: Manually override store availability state.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                available:
                  type: boolean
                  description: new availability state
      responses:
        '200':
          $ref: '#/components/responses/Success'
  /v1/management/settings/legal:
    get:
      operationId: getLegal
      tags:
      - Store
      summary: Get store legal information
      responses:
        '200':
          description: Legal information retrieved
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: string
                  payload:
                    type: object
                    properties:
                      legal:
                        type: object
  /v1/management/settings/webhook/{name}:
    parameters:
    - name: name
      in: path
      required: true
      schema:
        type: string
        enum:
        - confirm-order
        - calculate-shipping-rates
      description: Webhook name
    get:
      operationId: getWebhookUrl
      tags:
      - Store
      summary: Get webhook URL
      responses:
        '200':
          description: Webhook URL retrieved
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: string
                  payload:
                    type: object
                    properties:
                      url:
                        type: string
                        format: uri
    patch:
      operationId: changeWebhookUrl
      tags:
      - Store
      summary: Change webhook URL
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                url:
                  type: string
                  format: uri
                  description: New webhook URL
      responses:
        '200':
          $ref: '#/components/responses/Success'
components:
  responses:
    Success:
      description: Successful operation
      content:
        application/json:
          schema:
            type: object
            properties:
              result:
                type: string
                example: success
              payload:
                type: object
  securitySchemes:
    UserApiKey:
      type: apiKey
      in: header
      name: X-API-KEY
      description: Dashboard user API key (or platform master key)
    PlatformTenant:
      type: apiKey
      in: header
      name: X-TENANT-ID
      description: Target tenant identifier, required only when authenticating with a platform master key. X-TENANT-NAME may be used instead.