> ## Documentation Index
> Fetch the complete documentation index at: https://api-docs.useopenwrench.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Köparföretag, platser, tillgångar och datamaskering

> Läs köparsidans referensdata som leverantörer kan se: relaterade köparföretag, platser och regioner, tillgångar och tillgångstyper samt maskering.

Arbetsordrar refererar till en värld ägd av dina köpare: deras företag, platser, regioner och tillgångar. Supplier API exponerar skrivskyddade vyer av dem alla, filtrerade till vad dina relationer berättigar dig att se.

Alla exempel förutsätter:

```bash theme={null}
export BASE="https://api.useopenwrench.com/api/external"
export KEY="<your-api-key>"
export SECRET="<shared-secret>"
```

## Datamaskering

Hur mycket du ser beror på vilken typ av leverantör din nyckel tillhör:

* **Nycklar för interna serviceteam** (ditt leverantörsföretag är köparens eget interna team) får fullständiga poster.
* **Tredjepartsleverantörsnycklar** får maskerade poster på arbetsordrar, platser och fakturor: köpar-privata fält tas bort innan svaret returneras.

Om ett fält du förväntar dig är genomgående tomt är maskering det första att kontrollera. Själva avgränsningen kan inte breddas via filter; tenant-säkerhetsfilter som härleds från din nyckel gäller alltid.

## Köparföretag

`GET /v1/supplier/buyer_company/buyer_companies` returnerar varje köparföretag som har en relation med din leverantör. Ingen paginering eller filter respekteras: hela den tenant-avgränsade uppsättningen kommer tillbaka i ett svar (varje företags `buyerCompanySettings` tas bort).

```bash theme={null}
curl -H "X-API-KEY: $KEY" -H "OW-KEY: $SECRET" \
  "$BASE/v1/supplier/buyer_company/buyer_companies"
```

Använd den för att styra beteende per köpare i din integration (vilka problemtyper att använda, vilka köpare som auto-godkänner tredjepartsslutföranden, och så vidare).

## Platser och regioner

```bash theme={null}
# Lista: sidstorleken är begränsad till 10 på den här slutpunkten (större gränser reduceras tyst)
curl -H "X-API-KEY: $KEY" -H "OW-KEY: $SECRET" \
  "$BASE/v1/supplier/location/locations?limit=10"

# Räkna, en, eller flera samtidigt
curl -H "X-API-KEY: $KEY" -H "OW-KEY: $SECRET" "$BASE/v1/supplier/location/locations/count_by"
curl -H "X-API-KEY: $KEY" -H "OW-KEY: $SECRET" "$BASE/v1/supplier/location/locations/1204"
curl -H "X-API-KEY: $KEY" -H "OW-KEY: $SECRET" "$BASE/v1/supplier/location/locations/multiple/1204,1205"
```

* Platslistan begränsar `limit` till **10**; de flesta andra listor tillåter 25.
* `multiple/{ids}` släpper tyst id:n du inte kan läsa; svarets `count` är lika med vad som faktiskt returnerades.
* Regioner (köparföretags-gruppering av platser) finns på `GET /v1/supplier/location/regions` och `/regions/{id}` med standardpaginering.

## Tillgångar och tillgångstyper

Tillgångar är utrustningen dina tekniker servar; tillgångstyper klassificerar dem.

```bash theme={null}
curl -H "X-API-KEY: $KEY" -H "OW-KEY: $SECRET" \
  "$BASE/v1/supplier/asset/assets?locationId=1204&limit=25"
curl -H "X-API-KEY: $KEY" -H "OW-KEY: $SECRET" "$BASE/v1/supplier/asset/assets/5511"
curl -H "X-API-KEY: $KEY" -H "OW-KEY: $SECRET" "$BASE/v1/supplier/asset/asset_types?limit=25"
```

Den enskilda tillgångsläsningen hydratiserar tillgångens mätare (höljestyp `ApiAssetWithMeter`), vilket ger dina tekniker mätarhistorikkontext före ett besök. Alla fyra slutpunkter (`assets`, `assets/{id}`, `asset_types`, `asset_types/{id}`) är skrivskyddade med standardpaginering och fältfilter.

## Tillgångsetiketter

Tillgångsetiketter är köpardefinierade taggar på tillgångar (ett namn plus en valfri färg). De tillhör alltid ett köparföretag, så åtkomst via Supplier API är begränsad till nycklar för en köpares interna serviceteam: dessa nycklar ser sitt köparföretags katalog, medan en tredjepartsleverantörs nyckel får en tom lista.

```bash theme={null}
# Katalogen (endast nycklar för interna serviceteam)
curl -H "X-API-KEY: $KEY" -H "OW-KEY: $SECRET" \
  "$BASE/v1/supplier/asset/asset_labels?no_pagination=true"

# Ersätt etiketterna på en tillgång
curl -X PUT "$BASE/v1/supplier/asset/assets/5511/labels" \
  -H "X-API-KEY: $KEY" -H "OW-KEY: $SECRET" \
  -H "Content-Type: application/json" \
  -d '{ "ids": [7, 21] }'
```

Katalogen är skrivskyddad (`GET /v1/supplier/asset/asset_labels` och `/{id}`); etiketter skapas och redigeras i OpenWrench-appen. Listan pagineras med 10 per sida som standard, accepterar `search`- och `label`-filter på etikettexten, och `no_pagination=true` returnerar hela katalogen.

`PUT /v1/supplier/asset/assets/{assetId}/labels` ersätter hela uppsättningen etiketter på tillgången (`{ "ids": [...] }`; en tom array rensar dem alla) och returnerar de etiketter som nu är aktiva. Skrivningen kräver skrivbehörighet för tillgångar, och varje id måste vara en levande etikett i ditt köparföretags katalog. En tredjepartsleverantörs nyckel får `400` även när den har skrivbehörighet för tillgångar. Ett okänt, raderat eller främmande tillgångs-id svarar med samma `400` som en nekad skrivning, inte en `404`.

## Cachingstrategi

Referensdata ändras långsamt. En praktisk uppsättning:

* Uppdatera köparföretag dagligen (ett anrop).
* Synka platser och tillgångar för aktiva arbetsordrar vid behov, cacha efter id.
* Behandla `400` på en enskild läsning som "utanför ditt omfång" och `404` som "existerar inte", och räkna med att id:n försvinner från din vy när en köparrelation avslutas.
