openapi: 3.0.3
info:
title: Distru Public Assemblies FileAttachments API
version: v1
x-apievangelist-generated: '2026-07-18'
x-apievangelist-method: generated
x-apievangelist-source: https://apidocs.distru.dev
description: 'The Distru Public API provides read and write access to a cannabis ERP: products, inventory, orders, invoices, purchases, companies, contacts, batches, packages, assemblies, strains, test results, locations, menus and more. Authentication uses a Bearer API key generated in the Distru app (Settings > Integrations > Distru API); keys expire one year from issue. Responses are JSON and list endpoints are paginated with page[number] and page[size] query parameters, returning a next_page URL when more pages exist. This specification was generated by API Evangelist from the published Distru API reference at https://apidocs.distru.dev — operation paths and methods are faithful to the documented surface; request/response schemas are intentionally generic where the reference does not publish a downloadable OpenAPI definition.'
contact:
name: Distru
email: hello@distru.com
url: https://www.distru.com/features/distru-api
servers:
- url: https://app.distru.com/public/v1
description: Production
security:
- bearerAuth: []
tags:
- name: FileAttachments
paths:
/file-attachments:
post:
tags:
- FileAttachments
operationId: createFileAttachment
summary: Upload a file attachment
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Resource'
responses:
'200':
$ref: '#/components/responses/OK'
'422':
$ref: '#/components/responses/Unprocessable'
components:
schemas:
Resource:
type: object
Problem:
type: object
properties:
error:
type: string
message:
type: string
responses:
Unprocessable:
description: Validation error.
content:
application/json:
schema:
$ref: '#/components/schemas/Problem'
OK:
description: Success.
content:
application/json:
schema:
$ref: '#/components/schemas/Resource'
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: 'API key issued in the Distru app under Settings > Integrations > Distru API, sent as `Authorization: Bearer <API_KEY>`. Keys expire one year from issue date.'