{ "opencollection": "1.0.0", "info": { "name": "Quartzy Public API", "version": "1.0", "description": "Manage lab inventory and ordering with the Quartzy Public API. Base URL https://api.quartzy.com, authenticated with a per-user AccessToken in the Access-Token header or via OAuth2. Reference: https://docs.quartzy.com/api/" }, "request": { "auth": { "type": "apikey", "apikey": { "key": "Access-Token", "value": "{{accessToken}}", "in": "header" } } }, "items": [ { "info": { "name": "Inventory Items", "type": "folder" }, "items": [ { "info": { "name": "List inventory items", "type": "http" }, "http": { "method": "GET", "url": "https://api.quartzy.com/inventory-items", "params": [ { "name": "lab_id", "value": "", "type": "query", "description": "Filter inventory items to a specific lab." }, { "name": "page", "value": "1", "type": "query", "description": "Page number for paginated results." } ] }, "docs": "Lists and filters inventory items, optionally scoped to a lab." }, { "info": { "name": "Retrieve an inventory item", "type": "http" }, "http": { "method": "GET", "url": "https://api.quartzy.com/inventory-items/:id", "params": [ { "name": "id", "value": "", "type": "path", "description": "The inventory item identifier." } ] }, "docs": "Retrieves a single inventory item, including its instances." }, { "info": { "name": "Update an inventory item quantity (deprecated)", "type": "http" }, "http": { "method": "PUT", "url": "https://api.quartzy.com/inventory-items/:id", "params": [ { "name": "id", "value": "", "type": "path", "description": "The inventory item identifier." } ], "body": { "type": "json", "data": "{\n \"remaining_quantity\": 5\n}" } }, "docs": "Deprecated. Updates the remaining quantity of an inventory item. Prefer updating a specific instance." }, { "info": { "name": "Update an item instance quantity", "type": "http" }, "http": { "method": "PUT", "url": "https://api.quartzy.com/inventory-items/:itemId/instances/:itemInstanceId", "params": [ { "name": "itemId", "value": "", "type": "path", "description": "The inventory item identifier." }, { "name": "itemInstanceId", "value": "", "type": "path", "description": "The item instance identifier." } ], "body": { "type": "json", "data": "{\n \"remaining_quantity\": 3\n}" } }, "docs": "Updates the remaining quantity of a specific instance of an inventory item." } ] }, { "info": { "name": "Order Requests", "type": "folder" }, "items": [ { "info": { "name": "List order requests", "type": "http" }, "http": { "method": "GET", "url": "https://api.quartzy.com/order-requests", "params": [ { "name": "lab_id", "value": "", "type": "query", "description": "Filter order requests to a specific lab." }, { "name": "page", "value": "1", "type": "query", "description": "Page number for paginated results." } ] }, "docs": "Lists and filters order requests, optionally scoped to a lab." }, { "info": { "name": "Create an order request", "type": "http" }, "http": { "method": "POST", "url": "https://api.quartzy.com/order-requests", "body": { "type": "json", "data": "{\n \"lab_id\": \"\",\n \"type_id\": \"\",\n \"name\": \"Anti-GFP antibody\",\n \"vendor_name\": \"Acme Bio\",\n \"catalog_number\": \"AB-1234\",\n \"quantity\": 1,\n \"unit_size\": \"100 uL\"\n}" } }, "docs": "Creates a new order request in a lab from an external system such as an ELN or LIMS." }, { "info": { "name": "Retrieve an order request", "type": "http" }, "http": { "method": "GET", "url": "https://api.quartzy.com/order-requests/:id", "params": [ { "name": "id", "value": "", "type": "path", "description": "The order request identifier." } ] }, "docs": "Retrieves a single order request by its identifier." }, { "info": { "name": "Update an order request status", "type": "http" }, "http": { "method": "PUT", "url": "https://api.quartzy.com/order-requests/:id", "params": [ { "name": "id", "value": "", "type": "path", "description": "The order request identifier." } ], "body": { "type": "json", "data": "{\n \"status\": \"APPROVED\"\n}" } }, "docs": "Advances an order request through the Quartzy ordering workflow by updating its status." } ] }, { "info": { "name": "Types", "type": "folder" }, "items": [ { "info": { "name": "List types", "type": "http" }, "http": { "method": "GET", "url": "https://api.quartzy.com/types", "params": [ { "name": "lab_id", "value": "", "type": "query", "description": "Filter types to a specific lab." }, { "name": "name", "value": "", "type": "query", "description": "Filter types by name." }, { "name": "page", "value": "1", "type": "query", "description": "Page number for paginated results." } ] }, "docs": "Lists and filters the item types defined for a lab." } ] }, { "info": { "name": "Labs", "type": "folder" }, "items": [ { "info": { "name": "List labs", "type": "http" }, "http": { "method": "GET", "url": "https://api.quartzy.com/labs", "params": [ { "name": "organization_id", "value": "", "type": "query", "description": "Filter labs to a specific organization." }, { "name": "page", "value": "1", "type": "query", "description": "Page number for paginated results." } ] }, "docs": "Lists the labs within an organization." }, { "info": { "name": "Retrieve a lab", "type": "http" }, "http": { "method": "GET", "url": "https://api.quartzy.com/labs/:id", "params": [ { "name": "id", "value": "", "type": "path", "description": "The lab identifier." } ] }, "docs": "Retrieves a single lab by its identifier." } ] }, { "info": { "name": "Webhooks", "type": "folder" }, "items": [ { "info": { "name": "List webhooks", "type": "http" }, "http": { "method": "GET", "url": "https://api.quartzy.com/webhooks", "params": [ { "name": "organization_id", "value": "", "type": "query", "description": "Filter webhooks to a specific organization." }, { "name": "page", "value": "1", "type": "query", "description": "Page number for paginated results." } ] }, "docs": "Lists the webhooks registered for an organization." }, { "info": { "name": "Create a webhook", "type": "http" }, "http": { "method": "POST", "url": "https://api.quartzy.com/webhooks", "body": { "type": "json", "data": "{\n \"organization_id\": \"\",\n \"url\": \"https://example.com/quartzy/webhook\",\n \"event\": \"order_request.updated\"\n}" } }, "docs": "Registers a webhook that Quartzy calls when a subscribed event occurs." }, { "info": { "name": "Retrieve a webhook", "type": "http" }, "http": { "method": "GET", "url": "https://api.quartzy.com/webhooks/:id", "params": [ { "name": "id", "value": "", "type": "path", "description": "The webhook identifier." } ] }, "docs": "Retrieves a single webhook by its identifier." }, { "info": { "name": "Update a webhook", "type": "http" }, "http": { "method": "PUT", "url": "https://api.quartzy.com/webhooks/:id", "params": [ { "name": "id", "value": "", "type": "path", "description": "The webhook identifier." } ], "body": { "type": "json", "data": "{\n \"is_enabled\": false\n}" } }, "docs": "Updates a webhook, for example to enable or disable it." } ] }, { "info": { "name": "User", "type": "folder" }, "items": [ { "info": { "name": "Retrieve the current user", "type": "http" }, "http": { "method": "GET", "url": "https://api.quartzy.com/user" }, "docs": "Returns information about the user that owns the AccessToken." }, { "info": { "name": "Service health check", "type": "http" }, "http": { "method": "GET", "url": "https://api.quartzy.com/healthz" }, "docs": "Returns the health status of the Quartzy API service." } ] } ] }