opengeospatial / opengeospatial/ogcapi-processes
Proposal - Unifying Status and Results in API 2.0
Nobody has claimed this yet.
- Dominant language
- AsciiDoc
- Stars
- 63
- Forks
- 46
- Avg merge
- 2d 1h
- Merged PRs (30d)
- 8
Description
This proposal is in line with my earlier remarks on simplification. 😄
The API is already highly flexible, notably by supporting both synchronous and asynchronous modes, as well as return preference.
I find it excessive to define two distinct schemas (statusInfo and results). A simpler and more consistent design would be to include results within statusInfo, as most processing and workflow engine APIs do.
My proposition for API 2.0 would be:
allOf:
- $ref: "./descriptionType.yaml"
- type: object
required:
- id
- status
- type
properties:
id:
type: string
processID:
type: string
format: uri
type:
type: string
example:
- process
- wps
- openeo
request:
oneOf:
- type: string
- type: object
- $ref: "../common-core/link.yaml"
status:
$ref: "statusCode.yaml"
results:
$ref: "./results.yaml"
...
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Review the proposed schema alongside the referenced descriptionType.yaml, statusCode.yaml, results.yaml, and ../common-core/link.yaml definitions. Compare the existing statusInfo and results schemas, then determine whether API 2.0 should incorporate results into statusInfo and update the related specification consistently.
Written by the indexing model from the issue text.
Assessment
- Domain
- api, backend-api-design
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100