Page MenuHomePhabricator

🟩️ Add POST /entities/items/{item_id}/statements endpoint to the OpenAPI spec
Closed, ResolvedPublic

Description

include:

  • request parameter `item_id: required
  • message body
    • statement: required
    • tags: default value []
    • bot: default value false
  • 201 happy response
    • Location, ETag and Last-Modified headers
  • 400, 404 and 500 error responses

out of scope for now:

  • authentication
  • redirect handling

cf. https://wmde.github.io/wikibase-rest-api-proposal/#/statements/post_entities__entity_type___entity_id__statements

Event Timeline

Change 803928 had a related patch set uploaded (by Silvan Heintze; author: Silvan Heintze):

[mediawiki/extensions/Wikibase@master] REST: Specify creating an item statement via POST

https://gerrit.wikimedia.org/r/803928

Change 803928 merged by jenkins-bot:

[mediawiki/extensions/Wikibase@master] REST: Specify creating an item statement via POST

https://gerrit.wikimedia.org/r/803928

Looks generally good, thank you!
Two remarks

  • should hash field of the mainsnak actually be part of the request? Or is it something left to Wikibase to generate?
  • thoughts on listing Location header in the 201 response headers? It is pretty standard one, so might be seen obvious and hence not needed to be included in the spec?

should hash field of the mainsnak actually be part of the request? Or is it something left to Wikibase to generate?

This is addressed in 807521 with Hash having the "readOnly": true property.

Change 808851 had a related patch set uploaded (by Silvan Heintze; author: Silvan Heintze):

[mediawiki/extensions/Wikibase@master] REST: Add Location header to statement response

https://gerrit.wikimedia.org/r/808851

Change 808851 merged by jenkins-bot:

[mediawiki/extensions/Wikibase@master] REST: Add Location header to statement response

https://gerrit.wikimedia.org/r/808851