{
  "openapi": "3.1.0",
  "info": {
    "title": "Expedy Printers API",
    "version": "v2",
    "description": "Reference for the printers endpoints of the Expedy API. Generated from https://docs.expedy.io.",
    "contact": {
      "name": "Expedy",
      "url": "https://docs.expedy.io"
    }
  },
  "servers": [
    {
      "url": "https://www.expedy.fr/api/v2",
      "description": "Production"
    }
  ],
  "paths": {
    "/printers/{printer_uid}/print": {
      "post": {
        "summary": "Create a Print Job",
        "description": "Sends a print job to the designated cloud thermal printer.\n\n**Base URL:** `https://www.expedy.fr/api/v2`\n\n---",
        "operationId": "post_printers_Byprinter_uid_print",
        "tags": [
          "printers"
        ],
        "parameters": [
          {
            "name": "printer_uid",
            "in": "path",
            "required": true,
            "description": "UID of the target printer, found in the console under **Printers** (e.g. `WP0RGS1SEDZ`). Do not include the `#` symbol. Use [`GET /printers/all`](#list-printers) to retrieve it programmatically.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "externalDocs": {
          "url": "https://docs.expedy.io/en/expedy-print/api-print-v2/create-a-print-job",
          "description": "Full documentation for Create a Print Job"
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "printer_msg": {
                    "type": "string",
                    "description": "The content to print, built with the [receipt layout tags](/expedy-print/receipt-layout/text-layout-tags) (`<C>`, `<BOLD>`, `<IMG>`, `<QR>`, `<CUT/>`, …). Plain text, QR codes, images, or a PDF URL — anything supported by the printer."
                  },
                  "origin": {
                    "type": "string",
                    "description": "A free-form label to tag the source of the job (a URI, an app name, a department…). Useful for filtering and debugging in your logs."
                  },
                  "printer_han": {
                    "type": "string",
                    "description": "The script to compose the receipt in: `cn` Chinese, `kr` Korean, `jp` Japanese. Omit it for Latin scripts. See [Asian characters](#asian-characters)."
                  }
                },
                "required": [
                  "printer_msg"
                ]
              },
              "example": {
                "printer_msg": "<C><BOLD>ORDER #1234</BOLD></C>\n<C>Table 7</C>\n--------------------------------\n1 x Burger\n2 x Fries\n<CUT/>",
                "origin": "pos-kitchen-01"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          }
        ]
      }
    },
    "/printers/all": {
      "get": {
        "summary": "List all your printers",
        "description": "Returns all the cloud printers attached to your account, with their UID, name, status and configuration. Use it to discover the `printer_uid` you need to [send a print job](/expedy-print/api-print-v2/create-a-print-job).\n\n**Base URL:** `https://www.expedy.fr/api/v2`\n\n---",
        "operationId": "get_printers_all",
        "tags": [
          "printers"
        ],
        "externalDocs": {
          "url": "https://docs.expedy.io/en/expedy-print/api-print-v2/get-printers-all",
          "description": "Full documentation for List all your printers"
        },
        "responses": {
          "200": {
            "description": "OK"
          }
        },
        "security": [
          {
            "apiKeyAuth": []
          }
        ]
      }
    }
  },
  "components": {
    "securitySchemes": {
      "apiKeyAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "Authorization",
        "description": "API key issued by Expedy. Contact support to obtain one."
      }
    }
  },
  "tags": [
    {
      "name": "printers"
    }
  ]
}