docs(api): set problem documentation namespace

This commit is contained in:
2026-08-20 18:24:26 +03:30
parent ee93460182
commit e54c8e8319
2 changed files with 8 additions and 8 deletions

View File

@@ -170,7 +170,7 @@ Every non-SSE error response uses RFC 9457 `application/problem+json` with:
```json
{
"type": "https://api.zarinpal.example/problems/validation-error",
"type": "https://zarinpal.amiirkhl.ir/docs/errors/validation-error",
"title": "Request validation failed",
"status": 422,
"detail": "One or more request values are invalid.",
@@ -277,11 +277,11 @@ Correlate `requestId`, authenticated user/merchant internal ids, run id, section
- CSV uses UTF-8 with a BOM, Persian column names separated by normal spaces, and Persian status labels. Numeric cells remain plain calculation-safe numbers and timestamps remain UTC ISO values.
- Analytics-access and CSV-export audit records are retained for 90 days and are accessible only to explicitly authorized backend operators; the MVP exposes no merchant audit-history surface.
- Detail responses and CSV exports show the existing opaque source terminal reference as `شناسه پایانه`; it is tenant-scoped trace data and never an authorization input.
- RFC 9457 problem `type` URIs use `https://zarinpal.amiirkhl.ir/docs/errors/{error-slug}` and resolve to human-readable error documentation.
## Remaining product questions
1. Choose the production base URI used for dereferenceable Problem Details `type` documentation; `https://api.zarinpal.example/problems/...` is a non-production placeholder in the draft contract.
2. Approve or revise the proposed public-edge request limits: 16 KiB for JSON bodies and 8 KiB for the request target/query string.
1. Approve or revise the proposed public-edge request limits: 16 KiB for JSON bodies and 8 KiB for the request target/query string.
## Standards references

View File

@@ -676,7 +676,7 @@ components:
schema:
$ref: '#/components/schemas/Problem'
example:
type: https://api.zarinpal.example/problems/unauthenticated
type: https://zarinpal.amiirkhl.ir/docs/errors/unauthenticated
title: Authentication required
status: 401
detail: Sign in to continue.
@@ -706,7 +706,7 @@ components:
schema:
$ref: '#/components/schemas/Problem'
example:
type: https://api.zarinpal.example/problems/resource-not-found
type: https://zarinpal.amiirkhl.ir/docs/errors/resource-not-found
title: Resource not found
status: 404
detail: The requested resource is unavailable.
@@ -747,7 +747,7 @@ components:
schema:
$ref: '#/components/schemas/Problem'
example:
type: https://api.zarinpal.example/problems/export-too-large
type: https://zarinpal.amiirkhl.ir/docs/errors/export-too-large
title: Export is too large
status: 413
detail: Narrow the approved filters and try again.
@@ -777,7 +777,7 @@ components:
schema:
$ref: '#/components/schemas/Problem'
example:
type: https://api.zarinpal.example/problems/validation-error
type: https://zarinpal.amiirkhl.ir/docs/errors/validation-error
title: Request validation failed
status: 422
detail: One or more request values are invalid.
@@ -1704,7 +1704,7 @@ components:
type:
type: string
format: uri
description: Stable problem type URI; production base URI is pending approval.
description: Stable problem type URI under `https://zarinpal.amiirkhl.ir/docs/errors/{error-slug}`.
title:
type: string
minLength: 1