Dokumentera API:er
Bra dokumentation är skillnaden mellan ett API som används och ett som ignoreras. Den här guiden samlar plattformens riktlinjer för OpenAPI, beskrivningar och exempel.
Bra dokumentation är skillnaden mellan ett API som används och ett som ignoreras. Den här guiden samlar plattformens riktlinjer för OpenAPI, beskrivningar och exempel.
API:er konsumeras av människor — utvecklare som behöver förstå vad de kan göra, hur autentisering fungerar och vad de kan förvänta sig av svaren. Tydlig dokumentation minskar supportärenden, snabbar upp integrationer och gör ditt API enklare att underhålla över tid.
På Uppsala kommuns API-plattform är OpenAPI 3.x källan till sanning. Allt — katalogvyn, "Try it"-funktionen, klientgenerering — utgår från specen. Om specen är slarvig blir portalen det också.
I info-blocket: ge API:et ett beskrivande namn, en kort sammanfattning
och en längre description i Markdown som förklarar syftet, målgruppen och
eventuella förutsättningar.
info:
title: Föreningsregister
version: 1.0.0
summary: API för Uppsala kommuns föreningsregister
description: |
Returnerar publika föreningar registrerade i kommunens föreningsregister.
**Målgrupp:** interna förvaltningar och bidragsadministration.
**Datakälla:** föreningsregistret, uppdateras dagligen kl 06:00.
Varje endpoint ska ha summary, description, operationId och minst ett
exempelsvar per statuskod du dokumenterar.
paths:
/foreningar:
get:
summary: Lista föreningar
description: |
Returnerar en paginerad lista av aktiva föreningar.
Använd `?type=` för att filtrera på föreningstyp.
operationId: listForeningar
parameters:
- name: type
in: query
schema:
type: string
enum: [idrott, kultur, samhalle]
responses:
'200':
description: Lista av föreningar
content:
application/json:
examples:
tva-foreningar:
summary: Två föreningar i svaret
value:
items:
- id: "f-001"
namn: "Uppsala Schackklubb"
typ: "kultur"
nextPage: null
Lista de viktigaste felkoderna (400, 401, 403, 404, 429, 5xx) och
ge ett exempel per kod. Använd plattformens standardfelschema:
components:
schemas:
Error:
type: object
required: [code, message]
properties:
code:
type: string
example: VALIDATION_FAILED
message:
type: string
example: Fältet "type" måste vara ett av: idrott, kultur, samhalle.
requestId:
type: string
example: 7c3e8d6e-1f2a-4b8c-9e1d-0a2b3c4d5e6f
description-fält som riktar sig till interna
utvecklare. Tekniska termer (HTTP-metoder, statuskoder, headers) behåller
sina engelska namn.info.description, inte i varje operation.info.title, summary och description är ifyllda och korrekta.summary, description och operationId.example per dokumenterad statuskod.swagger-cli validate).När checklistan är grön är du redo att gå vidare till Publicera API:er.