0

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:

{
  "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 ?

bumped to the homepage by Community 15 hours ago

This question has answers that may be good or bad; the system has marked it active so that they can be reviewed.

0

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, privacy policy and cookie policy

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