slogan3

Ontwikkel een OpenAPI Specificatie voor API Gegevensvalidatie en Schema Controle

description

Met deze prompt kun je een OpenAPI specificatie maken die ervoor zorgt dat je API alleen correcte en gevalideerde data accepteert. Dit voorkomt integratiefouten, verbetert de datakwaliteit en maakt de API betrouwbaarder en gemakkelijker te onderhouden. Het helpt ook ontwikkelaars om duidelijke validatie- en foutafhandelingsregels te begrijpen en toe te passen.

prompt

Help me een OpenAPI specificatie te maken die geavanceerde gegevensvalidatie en schema controles beschrijft om de datakwaliteit en interoperabiliteit van mijn API te verbeteren. API Naam: <voer de naam van mijn API in> Validatieregels (bijv. formaat, patroon, minimum/maximum waarden): <beschrijf de gewenste validatieregels> Data Schema's en Types: <geef details over de ...

try_prompt

generate_helper
disclaimerOnPageApi

ai_answers

provider: openai
model: gpt-4.1-nano
openapi: 3.1.0 info: titel: Product Beheer API versie: '1.0.0' beschrijving: > API voor het beheren van producten met geavanceerde gegevensvalidatie en schema controles om datakwaliteit en interoperabiliteit te verbeteren. paths: /producten: post: summary: Voeg een nieuw product toe requestBody: required: true content: application/json: schema: type: object required: - id - naam - leeftijd - prijs - email properties: id: type: integer beschrijving: Unieke identificatie van het product naam: type: string beschrijving: Naam van het product leeftijd: type: integer beschrijving: Leeftijdsindicatie voor het product prijs: type: number format: decimal minimum: 0.0000001 beschrijving: Prijs van het product, groter dan 0 email: type: string format: email beschrijving: Contact email voor het product responses: '201': description: Product succesvol toegevoegd '400': description: Validatiefouten content: application/json: schema: type: object properties: errorCode: type: string description: Code die de fout aanduidt message: type: string description: Beschrijving van de validatiefout required: - errorCode - message components: schemas: ErrorResponse: type: object properties: errorCode: type: string message: type: string required: - errorCode - message security: - []
provider: deepseek
model: deepseek-chat
Hier is een OpenAPI 3.0 specificatie in YAML voor je Product Beheer API met geavanceerde validatie: ```yaml openapi: 3.0.0 info: title: Product Beheer API description: API voor het beheren van producten met geavanceerde gegevensvalidatie version: 1.0.0 contact: name: API Ondersteuning email: support@voorbeeld.nl servers: - url: https://api.voorbeeld.nl/v1 description: Productie server paths: /products: post: summary: Maak een nieuw product aan description: Endpoint voor het aanmaken van een nieuw product met uitgebreide validatie requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ProductAanmaak' responses: '201': description: Product succesvol aangemaakt content: application/json: schema: $ref: '#/components/schemas/Product' '400': description: Validatiefout in request body content: application/json: schema: $ref: '#/components/schemas/ValidatieFout' components: schemas: ProductAanmaak: type: object required: - naam - prijs - email properties: id: type: integer description: Unieke identifier van het product minimum: 1 example: 1 naam: type: string description: Naam van het product minLength: 1 maxLength: 100 pattern: '^[a-zA-Z0-9\s\-_]+$' example: "Premium Product" prijs: type: number format: float description: Prijs van het product (moet groter zijn dan 0) minimum: 0.01 exclusiveMinimum: true example: 29.99 email: type: string format: email description: Contact email voor het product pattern: '^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$' example: "contact@voorbeeld.nl" leeftijd: type: integer description: Leeftijd in jaren minimum: 0 maximum: 150 example: 25 additionalProperties: false Product: type: object properties: id: type: integer example: 1 naam: type: string example: "Premium Product" prijs: type: number format: float example: 29.99 email: type: string example: "contact@voorbeeld.nl" leeftijd: type: integer example: 25 aangemaaktOp: type: string format: date-time ValidatieFout: type: object properties: errorCode: type: string description: Unieke code voor het type validatiefout enum: - VALIDATION_ERROR - INVALID_FORMAT - MISSING_REQUIRED_FIELD - VALUE_OUT_OF_RANGE example: "VALIDATION_ERROR" message: type: string description: Beschrijvende foutmelding example: "Validatiefout in request body" details: type: array items: type: object properties: field: type: string description: Naam van het veld met validatiefout error: type: string description: Specifieke foutmelding voor het veld value: type: string description: De waarde die de validatiefout veroorzaakte responses: ValidatieFoutResponse: description: Validatiefout in request body content: application/json: schema: $ref: '#/components/schemas/ValidatieFout' parameters: ProductId: name: id in: path required: true schema: type: integer minimum: 1 description: Unieke identifier van het product ``` **Belangrijkste validatiekenmerken in deze specificatie:** 1. **Prijs validatie**: - `type: number` + `format: float` voor decimale waarden - `minimum: 0.01` + `exclusiveMinimum: true` zorgt voor waarden > 0 2. **Email validatie**: - `format: email` voor standaard email validatie - `pattern` met regex voor aanvullende controle 3. **Strikte schema validatie**: - `required` velden voor verplichte invoer - `additionalProperties: false` voorkomt extra velden - `minLength`/`maxLength` voor string lengtes - `minimum`/`maximum` voor numerieke bereiken 4. **Gestructureerde foutafhandeling**: - Duidelijke error codes en beschrijvende messages - Gedetailleerde informatie over validatiefouten Deze specificatie zorgt voor robuuste gegevensvalidatie en verbetert zowel datakwaliteit als interoperabiliteit van je API.