












Beta Libraries Endpoints
(beta) Libraries API to create and manage libraries - index your documents to enhance agent capabilities.












Examples
Real world code examples
List all libraries you have access to.
GET /v1/libraries
List all libraries that you have created or have been shared with you.
200
Successful Response
Playground
Test the endpoints live
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({
apiKey: "MISTRAL_API_KEY",
});
async function run() {
const result = await mistral.beta.libraries.list();
console.log(result);
}
run();
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({
apiKey: "MISTRAL_API_KEY",
});
async function run() {
const result = await mistral.beta.libraries.list();
console.log(result);
}
run();
from mistralai import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.beta.libraries.list()
# Handle response
print(res)
from mistralai import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.beta.libraries.list()
# Handle response
print(res)
curl https://api.mistral.ai/v1/libraries \
-X GET \
-H 'Authorization: Bearer YOUR_APIKEY_HERE'curl https://api.mistral.ai/v1/libraries \
-X GET \
-H 'Authorization: Bearer YOUR_APIKEY_HERE'200
{
"data": [
{
"chunk_size": null,
"created_at": "2025-10-07T20:56:01.974Z",
"id": "ipsum eiusmod",
"name": "consequat do",
"nb_documents": 87,
"owner_id": "reprehenderit ut dolore",
"owner_type": "occaecat dolor sit",
"total_size": 14,
"updated_at": "2025-10-07T20:56:01.974Z"
}
]
}{
"data": [
{
"chunk_size": null,
"created_at": "2025-10-07T20:56:01.974Z",
"id": "ipsum eiusmod",
"name": "consequat do",
"nb_documents": 87,
"owner_id": "reprehenderit ut dolore",
"owner_type": "occaecat dolor sit",
"total_size": 14,
"updated_at": "2025-10-07T20:56:01.974Z"
}
]
}Create a new Library.
POST /v1/libraries
Create a new Library, you will be marked as the owner and only you will have the possibility to share it with others. When first created this will only be accessible by you.
chunk_size
description
name
201
Successful Response
chunk_size
created_at
description
emoji
explicit_user_members_count
explicit_workspace_members_count
generated_description
generated_name
id
name
nb_documents
org_sharing_role
owner_id
owner_type
total_size
updated_at
Playground
Test the endpoints live
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({
apiKey: "MISTRAL_API_KEY",
});
async function run() {
const result = await mistral.beta.libraries.create({
name: "<value>",
});
console.log(result);
}
run();
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({
apiKey: "MISTRAL_API_KEY",
});
async function run() {
const result = await mistral.beta.libraries.create({
name: "<value>",
});
console.log(result);
}
run();
from mistralai import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.beta.libraries.create(name="<value>")
# Handle response
print(res)
from mistralai import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.beta.libraries.create(name="<value>")
# Handle response
print(res)
curl https://api.mistral.ai/v1/libraries \
-X POST \
-H 'Authorization: Bearer YOUR_APIKEY_HERE' \
-d '{
"name": "ipsum eiusmod"
}'curl https://api.mistral.ai/v1/libraries \
-X POST \
-H 'Authorization: Bearer YOUR_APIKEY_HERE' \
-d '{
"name": "ipsum eiusmod"
}'201
{
"chunk_size": null,
"created_at": "2025-10-07T20:56:01.974Z",
"id": "ipsum eiusmod",
"name": "consequat do",
"nb_documents": 87,
"owner_id": "reprehenderit ut dolore",
"owner_type": "occaecat dolor sit",
"total_size": 14,
"updated_at": "2025-10-07T20:56:01.974Z"
}{
"chunk_size": null,
"created_at": "2025-10-07T20:56:01.974Z",
"id": "ipsum eiusmod",
"name": "consequat do",
"nb_documents": 87,
"owner_id": "reprehenderit ut dolore",
"owner_type": "occaecat dolor sit",
"total_size": 14,
"updated_at": "2025-10-07T20:56:01.974Z"
}Detailed information about a specific Library.
GET /v1/libraries/{library_id}
Given a library id, details information about that Library.
library_id
200
Successful Response
chunk_size
created_at
description
emoji
explicit_user_members_count
explicit_workspace_members_count
generated_description
generated_name
id
name
nb_documents
org_sharing_role
owner_id
owner_type
total_size
updated_at
Playground
Test the endpoints live
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({
apiKey: "MISTRAL_API_KEY",
});
async function run() {
const result = await mistral.beta.libraries.get({
libraryId: "d0d23a1e-bfe5-45e7-b7bb-22a4ea78d47f",
});
console.log(result);
}
run();
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({
apiKey: "MISTRAL_API_KEY",
});
async function run() {
const result = await mistral.beta.libraries.get({
libraryId: "d0d23a1e-bfe5-45e7-b7bb-22a4ea78d47f",
});
console.log(result);
}
run();
from mistralai import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.beta.libraries.get(library_id="d0d23a1e-bfe5-45e7-b7bb-22a4ea78d47f")
# Handle response
print(res)
from mistralai import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.beta.libraries.get(library_id="d0d23a1e-bfe5-45e7-b7bb-22a4ea78d47f")
# Handle response
print(res)
curl https://api.mistral.ai/v1/libraries/{library_id} \
-X GET \
-H 'Authorization: Bearer YOUR_APIKEY_HERE'curl https://api.mistral.ai/v1/libraries/{library_id} \
-X GET \
-H 'Authorization: Bearer YOUR_APIKEY_HERE'200
{
"chunk_size": null,
"created_at": "2025-10-07T20:56:01.974Z",
"id": "ipsum eiusmod",
"name": "consequat do",
"nb_documents": 87,
"owner_id": "reprehenderit ut dolore",
"owner_type": "occaecat dolor sit",
"total_size": 14,
"updated_at": "2025-10-07T20:56:01.974Z"
}{
"chunk_size": null,
"created_at": "2025-10-07T20:56:01.974Z",
"id": "ipsum eiusmod",
"name": "consequat do",
"nb_documents": 87,
"owner_id": "reprehenderit ut dolore",
"owner_type": "occaecat dolor sit",
"total_size": 14,
"updated_at": "2025-10-07T20:56:01.974Z"
}Update a library.
PUT /v1/libraries/{library_id}
Given a library id, you can update the name and description.
library_id
description
name
200
Successful Response
chunk_size
created_at
description
emoji
explicit_user_members_count
explicit_workspace_members_count
generated_description
generated_name
id
name
nb_documents
org_sharing_role
owner_id
owner_type
total_size
updated_at
Playground
Test the endpoints live
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({
apiKey: "MISTRAL_API_KEY",
});
async function run() {
const result = await mistral.beta.libraries.update({
libraryId: "e01880c3-d0b5-4a29-8b1b-abdb8ce917e4",
libraryInUpdate: {},
});
console.log(result);
}
run();
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({
apiKey: "MISTRAL_API_KEY",
});
async function run() {
const result = await mistral.beta.libraries.update({
libraryId: "e01880c3-d0b5-4a29-8b1b-abdb8ce917e4",
libraryInUpdate: {},
});
console.log(result);
}
run();
from mistralai import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.beta.libraries.update(library_id="e01880c3-d0b5-4a29-8b1b-abdb8ce917e4")
# Handle response
print(res)
from mistralai import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.beta.libraries.update(library_id="e01880c3-d0b5-4a29-8b1b-abdb8ce917e4")
# Handle response
print(res)
curl https://api.mistral.ai/v1/libraries/{library_id} \
-X PUT \
-H 'Authorization: Bearer YOUR_APIKEY_HERE' \
-d '{}'curl https://api.mistral.ai/v1/libraries/{library_id} \
-X PUT \
-H 'Authorization: Bearer YOUR_APIKEY_HERE' \
-d '{}'200
{
"chunk_size": null,
"created_at": "2025-10-07T20:56:01.974Z",
"id": "ipsum eiusmod",
"name": "consequat do",
"nb_documents": 87,
"owner_id": "reprehenderit ut dolore",
"owner_type": "occaecat dolor sit",
"total_size": 14,
"updated_at": "2025-10-07T20:56:01.974Z"
}{
"chunk_size": null,
"created_at": "2025-10-07T20:56:01.974Z",
"id": "ipsum eiusmod",
"name": "consequat do",
"nb_documents": 87,
"owner_id": "reprehenderit ut dolore",
"owner_type": "occaecat dolor sit",
"total_size": 14,
"updated_at": "2025-10-07T20:56:01.974Z"
}Delete a library and all of it's document.
DELETE /v1/libraries/{library_id}
Given a library id, deletes it together with all documents that have been uploaded to that library.
library_id
200
Successful Response
chunk_size
created_at
description
emoji
explicit_user_members_count
explicit_workspace_members_count
generated_description
generated_name
id
name
nb_documents
org_sharing_role
owner_id
owner_type
total_size
updated_at
Playground
Test the endpoints live
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({
apiKey: "MISTRAL_API_KEY",
});
async function run() {
const result = await mistral.beta.libraries.delete({
libraryId: "6cad0b6e-fd2e-4d11-a48b-21d30fb7c17a",
});
console.log(result);
}
run();
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({
apiKey: "MISTRAL_API_KEY",
});
async function run() {
const result = await mistral.beta.libraries.delete({
libraryId: "6cad0b6e-fd2e-4d11-a48b-21d30fb7c17a",
});
console.log(result);
}
run();
from mistralai import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.beta.libraries.delete(library_id="6cad0b6e-fd2e-4d11-a48b-21d30fb7c17a")
# Handle response
print(res)
from mistralai import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.beta.libraries.delete(library_id="6cad0b6e-fd2e-4d11-a48b-21d30fb7c17a")
# Handle response
print(res)
curl https://api.mistral.ai/v1/libraries/{library_id} \
-X DELETE \
-H 'Authorization: Bearer YOUR_APIKEY_HERE'curl https://api.mistral.ai/v1/libraries/{library_id} \
-X DELETE \
-H 'Authorization: Bearer YOUR_APIKEY_HERE'200
{
"chunk_size": null,
"created_at": "2025-10-07T20:56:01.974Z",
"id": "ipsum eiusmod",
"name": "consequat do",
"nb_documents": 87,
"owner_id": "reprehenderit ut dolore",
"owner_type": "occaecat dolor sit",
"total_size": 14,
"updated_at": "2025-10-07T20:56:01.974Z"
}{
"chunk_size": null,
"created_at": "2025-10-07T20:56:01.974Z",
"id": "ipsum eiusmod",
"name": "consequat do",
"nb_documents": 87,
"owner_id": "reprehenderit ut dolore",
"owner_type": "occaecat dolor sit",
"total_size": 14,
"updated_at": "2025-10-07T20:56:01.974Z"
}