intercom-php icon indicating copy to clipboard operation
intercom-php copied to clipboard

Attach a tag to a contact

Open baj84 opened this issue 4 years ago • 1 comments

Hi,

I'm trying to attach a tag to a contact. I can see it in the API docs, but I can find an appropriate method - has it been implemented? https://developers.intercom.com/intercom-api-reference/reference#tag-contact

Thanks!

baj84 avatar Aug 03 '21 00:08 baj84

I believe there is a method in intercom-php/src/IntercomTags.php:

    /**
     * Creates a Tag.
     *
     * @see    https://developers.intercom.io/reference#create-and-update-tags
     * @param  array $options
     * @return mixed
     * @throws \GuzzleHttp\Exception\GuzzleException
     */
    public function tag($options)
    {
        return $this->client->post("tags", $options);
    }

Now in v1.4 I can see that tags can be attached like this

<?php
# Note that you can use either id, user_id or email to tag a user.
# You only need to use one per user, e.g. the below will tag
# three users if each identifier is for a different, unique user
$intercom->tags->tag([
    "name" => "VIPs",
    "users" => [
        ["id" => "5977e20941abfc5aae4552d1"],
        ["user_id" => "12345"],
        ["email" => "[email protected]"]
    ]
]);
?>

but since I can't find something similar in latest 2.4. I dig a little in the documentation (p.s. I believe there are some issues with the latest documentation):

  • Here https://developers.intercom.com/intercom-api-reference/reference/create-and-update-tags there is no reference for a PHP method.

  • But in the https://developers.intercom.com/intercom-api-reference/reference/tag-companies there is a PHP example for untagging users (obviously, it's classified wrong ).,

Finally, looking at the README there is the

$client->tags->tag([
    'name' => 'Test',
    'users' => [
        ['id' => '1234'],
    ],
]);

Not sure if the above ^^ works though, but it's worth a try. Also, I can see that the method from 1.4 is still available, so if this doesn't work maybe try the first approach.

Hope it helps!

dspachos avatar Jan 17 '22 07:01 dspachos