PUBLIC API v1
Retrieve a direct attachment
GET /api/v1/companies/{company_pk}/attachments/{public_id}/
Retrieve a direct attachment by publicId (pk) (by company pk)
Permission: read_documents · Direct link
Company-scoped. Account permissions, plan limits and document state still apply.
Path and query parameters
| Parameter | Location / type | Description |
|---|---|---|
company_pkRequired | path · string (uuid) | Not specified |
public_idRequired | path · string (uuid) | Not specified |
Responses
200 Response fields
application/json
| Field | Type / accepted values | Description |
|---|---|---|
publicIdRequiredRead only | string (uuid) | Not specified |
createdRequiredRead only | string (date-time) | Not specified |
file | string (uri) | null | Not specified |
transactionsRequired | string (uuid)[] | Not specified |
companyRequired | string (uuid) | Not specified |
attachmentType | "invoice" | "receipt" | "contract" | "other" | * `invoice` - Invoice * `receipt` - Receipt * `contract` - Contract * `other` - Other |
amount | string (decimal) | null | Not specified |
amountExchanged | string (decimal) | null | Not specified |
attachmentNumber | string | Not specified |
brandName | string | Not specified |
currency | string | Not specified |
currencyExchanged | string | null | Not specified |
description | string | Not specified |
supplierCountry | "DE" | "PL" | "DOMESTIC" | "INSIDE_EU" | "OUTSIDE_EU" | "" | Not specified |
valueDate | string (date-time) | null | Not specified |
vatSumAmount | string (decimal) | null | Not specified |
vatSumAmountExchanged | string (decimal) | null | Not specified |
fileName | string | Not specified |
saleType | "GOODS" | "SERVICES" | "" | Not specified |
vatRate | 23 | 19 | 8 | 7 | 5 | 0 | -1 | -2 | * `23` - 23% * `19` - 19% * `8` - 8% * `7` - 7% * `5` - 5% * `0` - 0% * `-1` - CUSTOM % * `-2` - Reverse charge |
extractedItems | object | null | Per-item OCR extraction results: [{description, amount, vat_rate, ...}] |
fileHash | string | Not specified |
retentionUntil | string (date) | null | Not specified |
externalSource | string | Not specified |
externalId | string | Not specified |
400 Response fields
application/json
| Field | Type / accepted values | Description |
|---|---|---|
detailRequired | string | Not specified |
code | integer | Not specified |
type_ | string | Not specified |
fieldRequired | string | Not specified |
401 Response fields
application/json
| Field | Type / accepted values | Description |
|---|---|---|
detailRequiredRead only | string | Not specified |
403 Missing scope, company mismatch, unsupported operation, or a plan/account restriction.
429 Rate limit exceeded. Wait for the Retry-After header before retrying.
Use the base URL https://api.norman.finance/api/v1. Sign up or log in to Norman to create an API key, then send it as a Bearer token. For an OpenAPI JSON file, contact support.