I want to insert a billet item list with related category ID in REST API Sharepoint.

I proceeded as follows:

POST /_api/lists/getbytitle('Billets')/items

    "__metadata": { "type": "SP.Data.BilletsListItem" },
    "Title": "Mise à jour",
    "PublishedDate": "2016-05-06T10:52:00Z",
    "Body": "test",
    "PostCategory": 2


  "error": {
    "code": "-1, Microsoft.SharePoint.Client.InvalidClientQueryException",
    "message": {
      "lang": "fr-FR",
      "value": "Un nœud 'PrimitiveValue' avec une valeur non-Null a été trouvé lors de la tentative de lecture de la valeur d'une propriété de navigation ; pourtant, un nœud 'StartArray', un nœud 'StartObject' ou un nœud 'PrimitiveValue' avec une valeur Null était attendu."

Without PostCategory parameter in the JSON the item is added successfully but without category.

Here the description of PostCategory field :

    "__metadata": {
      "id": "/_api/Web/Lists(guid'd67d1f54-aab5-460d-905d-a904553975e6')/Fields(guid'38bea83b-350a-1a6e-f34a-93a6af31338b')",
      "uri": "/_api/Web/Lists(guid'd67d1f54-aab5-460d-905d-a904553975e6')/Fields(guid'38bea83b-350a-1a6e-f34a-93a6af31338b')",
      "type": "SP.FieldLookup"
    "CanBeDeleted": false,
    "DefaultValue": null,
    "Description": "",
    "Direction": "none",
    "EnforceUniqueValues": false,
    "EntityPropertyName": "PostCategory",
    "Filterable": true,
    "FromBaseType": false,
    "Group": "Colonnes personnalisées",
    "Hidden": false,
    "Id": "38bea83b-350a-1a6e-f34a-93a6af31338b",
    "Indexed": false,
    "InternalName": "PostCategory",
    "JSLink": "clienttemplates.js",
    "ReadOnlyField": false,
    "Required": false,
    "SchemaXml": "<Field Name=\"PostCategory\" Type=\"LookupMulti\" DisplayName=\"Catégorie\" List=\"{81E335A6-8361-4883-A835-C5E1C6B0E67B}\" Mult=\"TRUE\" ShowField=\"Title\" ID=\"{38bea83b-350a-1a6e-f34a-93a6af31338b}\" Sortable=\"FALSE\" Sealed=\"TRUE\" SourceID=\"http://schemas.microsoft.com/sharepoint/v3\" StaticName=\"PostCategory\" ColName=\"int2\" RowOrdinal=\"0\" />",
    "Scope": "/Lists/Billets",
    "Sealed": true,
    "Sortable": false,
    "StaticName": "PostCategory",
    "Title": "Catégorie",
    "FieldTypeKind": 7,
    "TypeAsString": "LookupMulti",
    "TypeDisplayName": "Recherche",
    "TypeShortDescription": "Recherche (informations déjà sur ce site)",
    "ValidationFormula": null,
    "ValidationMessage": null,
    "AllowMultipleValues": true,
    "IsRelationship": true,
    "LookupField": "Title",
    "LookupList": "{81E335A6-8361-4883-A835-C5E1C6B0E67B}",
    "LookupWebId": "74bab6ac-e483-456b-9a8a-7c7fb279c4b7",
    "PrimaryFieldId": null,
    "RelationshipDeleteBehavior": 0

How can I add category Id in my post JSON request ?

1 Answer 1


I have found! Here solve my problem :

POST /_api/lists/getbytitle('Billets')/items

    "__metadata": { "type": "SP.Data.BilletsListItem" },
    "Title": "Mise à jour",
    "PublishedDate": "2016-05-06T10:52:00Z",
    "Body": "test",
    "PostCategoryId": {"results": [2]}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.