Modifier les tags d’une story
Trouvez ou créez les tags dont vous avez besoin, puis ajoutez et retirez des tags et des hashtags sur une story avec la mutation storyTag.
Les tags et les hashtags sont des objets qui ont chacun leur identifiant GraphQL. Pour modifier les tags d’une story, trouvez d’abord les identifiants des tags voulus. Envoyez-les ensuite à la mutation storyTag, avec l’identifiant de la story (voir Lire une story). L’article À propos des tags décrit les tags, les catégories et les hashtags tels que les utilisateurs les voient.
Trouver les tags
Cherchez par nom parmi les tags globaux (ceux qui ne sont pas limités à un espace) et les hashtags :
query searchTags {
me {
searchGlobalTags(text: "a tag") {
tag {
id
name
}
}
searchHashtags(text: "hashtag") {
hashtag {
id
name
}
}
}
}
La réponse :
{
"data": {
"me": {
"searchGlobalTags": [
{ "tag": { "id": "VGFnOjEwOQ==", "name": "a nice tag" } },
{ "tag": { "id": "VGFnOjQwMw==", "name": "another test tag" } }
],
"searchHashtags": [
{ "hashtag": { "id": "SGFzaHRhZzozMDU=", "name": "my cool hashtag" } }
]
}
}
}
Un tag appartient toujours à une catégorie (un Facet dans l’API). Pour lister les tags d’une catégorie, lisez-la par son identifiant :
query tagsOfACategory {
node(id: "FACET_ID") {
... on Facet {
name
tags(first: 50) {
edges {
node {
id
name
}
}
}
}
}
}
Pour les tags limités à un ou plusieurs espaces, utilisez searchTags(text:, spaces:) sur me, en passant les identifiants de ces espaces.
Gardez l’id de chaque tag que vous voulez utiliser.
Créer un tag
Si le tag n’existe pas, créez-le dans sa catégorie :
mutation createATag {
tagCreate(input: { facetId: "FACET_ID", names: { en: "Name of the tag" } }) {
tag {
id
}
}
}
names accepte un nom par langue, name un seul.
Modifier les tags de la story
Envoyez les identifiants des tags à ajouter et ceux des tags à retirer. La mutation :
mutation storyTagExample($input: StoryTagInput!) {
storyTag(input: $input) {
story {
tags {
id
name
}
hashtags {
id
name
}
}
ignoredTags {
id
name
}
ignoredHashtags {
id
name
}
}
}
Les variables :
{
"input": {
"id": "STORY_ID",
"addedTags": ["TAG_ID_1", "TAG_ID_2"],
"removedTags": ["TAG_ID_3"],
"addedHashtags": ["HASHTAG_ID_1"],
"removedHashtags": []
}
}
La réponse liste les tags et les hashtags de la story après la modification :
{
"data": {
"storyTag": {
"story": {
"tags": [
{ "id": "TAG_ID_1", "name": "Tag 1" },
{ "id": "TAG_ID_2", "name": "Tag 2" }
],
"hashtags": [{ "id": "HASHTAG_ID_1", "name": "Hashtag 1" }]
},
"ignoredTags": null,
"ignoredHashtags": null
}
}
}
ignoredTags et ignoredHashtags listent les tags et les hashtags que la plateforme n’a pas appliqués, par exemple parce qu’ils sont fixés par le modèle de la story.