Conversations
Conversations are an essential part of Oblic — they are the containers for the messages between you, your contacts, and groups. On this page, we’ll dive into the different conversation endpoints you can use to manage conversations programmatically. We'll look at how to query, create, update, and delete conversations.
The conversation model
The conversation model contains all the information about the conversations between you and your contacts. In addition, conversations can also be group-based with more than one contact, they can have a pinned message, and they can be muted.
Properties
- Nome
id- Tipo
- string
- Descrição
Unique identifier for the conversation.
- Nome
contact_id- Tipo
- string
- Descrição
Unique identifier for the other contact in the conversation.
- Nome
group_id- Tipo
- string
- Descrição
Unique identifier for the group that the conversation belongs to.
- Nome
pinned_message_id- Tipo
- string
- Descrição
Unique identifier for the pinned message.
- Nome
is_pinned- Tipo
- boolean
- Descrição
Whether or not the conversation has been pinned.
- Nome
is_muted- Tipo
- boolean
- Descrição
Whether or not the conversation has been muted.
- Nome
last_active_at- Tipo
- timestamp
- Descrição
Timestamp of when the conversation was last active.
- Nome
last_opened_at- Tipo
- timestamp
- Descrição
Timestamp of when the conversation was last opened by the authenticated user.
- Nome
created_at- Tipo
- timestamp
- Descrição
Timestamp of when the conversation was created.
- Nome
archived_at- Tipo
- timestamp
- Descrição
Timestamp of when the conversation was archived.
List all conversations
This endpoint allows you to retrieve a paginated list of all your conversations. By default, a maximum of ten conversations are shown per page.
Optional attributes
- Nome
limit- Tipo
- integer
- Descrição
Limit the number of conversations returned.
- Nome
muted- Tipo
- boolean
- Descrição
Only show conversations that are muted when set to
true.
- Nome
archived- Tipo
- boolean
- Descrição
Only show conversations that are archived when set to
true.
- Nome
pinned- Tipo
- boolean
- Descrição
Only show conversations that are pinned when set to
true.
- Nome
group_id- Tipo
- string
- Descrição
Only show conversations for the specified group.
Request
curl -G https://api.oblic.app/external/conversations \
-H "Authorization: Bearer {token}" \
-d limit=10
Response
{
"has_more": false,
"data": [
{
"id": "xgQQXg3hrtjh7AvZ",
"contact_id": "WAz8eIbvDR60rouK",
"group_id": null,
"pinned_message_id": null,
"is_pinned": false,
"is_muted": false,
"last_active_at": 705103200,
"last_opened_at": 705103200,
"created_at": 692233200,
"archived_at": null
},
{
"id": "hSIhXBhNe8X1d8Et"
// ...
}
]
}
Create a conversation
This endpoint allows you to add a new conversation between you and a contact or group. A contact or group id is required to create a conversation.
Required attributes
- Nome
contact_id- Tipo
- string
- Descrição
Unique identifier for the other contact in the conversation.
- Nome
group_id- Tipo
- string
- Descrição
Unique identifier for the group that the conversation belongs to.
Request
curl https://api.oblic.app/external/conversations \
-H "Authorization: Bearer {token}" \
-d 'contact_id'="WAz8eIbvDR60rouK"
Response
{
"id": "xgQQXg3hrtjh7AvZ",
"contact_id": "WAz8eIbvDR60rouK",
"group_id": null,
"pinned_message_id": null,
"is_pinned": false,
"is_muted": false,
"last_active_at": null,
"last_opened_at": null,
"created_at": 692233200,
"archived_at": null
}
Retrieve a conversation
This endpoint allows you to retrieve a conversation by providing the conversation id. Refer to the list at the top of this page to see which properties are included with conversation objects.
Request
curl https://api.oblic.app/external/conversations/xgQQXg3hrtjh7AvZ \
-H "Authorization: Bearer {token}"
Response
{
"id": "xgQQXg3hrtjh7AvZ",
"contact_id": "WAz8eIbvDR60rouK",
"group_id": null,
"pinned_message_id": null,
"is_pinned": false,
"is_muted": false,
"last_active_at": 705103200,
"last_opened_at": 705103200,
"created_at": 692233200,
"archived_at": null
}
Update a conversation
This endpoint allows you to perform an update on a conversation. Examples of updates are pinning a message, muting or archiving the conversation, or pinning the conversation itself.
Optional attributes
- Nome
pinned_message_id- Tipo
- string
- Descrição
Unique identifier for the pinned message.
- Nome
is_pinned- Tipo
- boolean
- Descrição
Whether or not the conversation has been pinned.
- Nome
is_muted- Tipo
- boolean
- Descrição
Whether or not the conversation has been muted.
- Nome
archived_at- Tipo
- timestamp
- Descrição
Timestamp of when the conversation was archived.
Request
curl -X PUT https://api.oblic.app/external/conversations/xgQQXg3hrtjh7AvZ \
-H "Authorization: Bearer {token}" \
-d 'is_muted'=true
Response
{
"id": "xgQQXg3hrtjh7AvZ",
"contact_id": "WAz8eIbvDR60rouK",
"group_id": null,
"pinned_message_id": null,
"is_pinned": false,
"is_muted": true,
"last_active_at": 705103200,
"last_opened_at": 705103200,
"created_at": 692233200,
"archived_at": null
}
Delete a conversation
This endpoint allows you to delete your conversations in Oblic. Note: This will permanently delete the conversation and all its messages — archive it instead if you want to be able to restore it later.
Request
curl -X DELETE https://api.oblic.app/external/conversations/xgQQXg3hrtjh7AvZ \
-H "Authorization: Bearer {token}"