> For the complete documentation index, see [llms.txt](https://guide-api-rest.marmicode.fr/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://guide-api-rest.marmicode.fr/conventions-et-bonnes-pratiques/ressource-dassociation.md).

# Ressource d'Association

Supposons la ressource `/users/123ab/friends` :

```javascript
{
  "objects": [
    {
      "id": ...,
      "firstName": ...,
      "type": "user"
    } 
  ]
}
```

{% tabs %}
{% tab title="🧐" %}
Comment représenter la *datetime* de création du lien entre les utilisateurs ?
{% endtab %}

{% tab title="👍" %}
Nous pouvons créer une ressource de type collection qui représente ces liens.

Exemple : `/friendships?userId=123ab`

```javascript
{
  "objects": [
    {
      "id": "FRIENDSHIP_ID_1",
      "creationDateTime": "2017-01-01T18:16:00.000Z",
      "friend": {
        "id": ...,
        "type": "user"
      }
    },
    ...
  ]
}
```

... puis la ressource d'instance `/friendships/FRIENDSHIP_ID_1` permettant d'accéder, modifier ou supprimer la relation.\
Exemple : `DELETE /friendships/FRIENDSHIP_ID_1`.
{% endtab %}
{% endtabs %}
