# Mementos API'er

Mementos giver brugerne mulighed for at definere samlinger af dokumenter, der kan tilgås af applikationer. Dette dokument skitserer de tilgængelige Memento API'er.

## Liste Mementos

{% openapi src="<https://github.com/skydeckai/rememberizer-docs/blob/production/da/.gitbook/assets/rememberizer_openapi.yml>" path="/mementos/" method="get" %}
<https://github.com/skydeckai/rememberizer-docs/blob/production/da/.gitbook/assets/rememberizer_openapi.yml>
{% endopenapi %}

### Eksempelanmodninger

{% tabs %}
{% tab title="cURL" %}

```bash
curl -X GET \
  https://api.rememberizer.ai/api/v1/mementos/ \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"
```

{% hint style="info" %}
For at teste denne API-anmodning, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token.
{% endhint %}
{% endtab %}

{% tab title="JavaScript" %}

```javascript
const fetchMementos = async () => {
  const response = await fetch('https://api.rememberizer.ai/api/v1/mementos/', {
    method: 'GET',
    headers: {
      'Authorization': 'Bearer YOUR_JWT_TOKEN'
    }
  });
  
  const data = await response.json();
  console.log(data);
};

fetchMementos();
```

{% hint style="info" %}
For at teste denne API-anmodning, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token.
{% endhint %}
{% endtab %}

{% tab title="Python" %}

```python
import requests

def fetch_mementos():
    headers = {
        "Authorization": "Bearer YOUR_JWT_TOKEN"
    }
    
    response = requests.get(
        "https://api.rememberizer.ai/api/v1/mementos/",
        headers=headers
    )
    
    data = response.json()
    print(data)

fetch_mementos()
```

{% hint style="info" %}
For at teste denne API-anmodning, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token.
{% endhint %}
{% endtab %}
{% endtabs %}

## Opret Memento

{% openapi src="<https://github.com/skydeckai/rememberizer-docs/blob/production/da/.gitbook/assets/rememberizer_openapi.yml>" path="/mementos/" method="post" %}
<https://github.com/skydeckai/rememberizer-docs/blob/production/da/.gitbook/assets/rememberizer_openapi.yml>
{% endopenapi %}

### Eksempelanmodninger

{% tabs %}
{% tab title="cURL" %}

```bash
curl -X POST \
  https://api.rememberizer.ai/api/v1/mementos/ \
  -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name": "Arbejd Dokumenter"}'
```

{% hint style="info" %}
For at teste denne API-anmodning, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token.
{% endhint %}
{% endtab %}

{% tab title="JavaScript" %}

```javascript
const createMemento = async () => {
  const response = await fetch('https://api.rememberizer.ai/api/v1/mementos/', {
    method: 'POST',
    headers: {
      'Authorization': 'Bearer YOUR_JWT_TOKEN',
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      name: 'Arbejd Dokumenter'
    })
  });
  
  const data = await response.json();
  console.log(data);
};

createMemento();
```

{% hint style="info" %}
For at teste denne API-anmodning, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token.
{% endhint %}
{% endtab %}

{% tab title="Python" %}

```python
import requests
import json

def create_memento():
    headers = {
        "Authorization": "Bearer YOUR_JWT_TOKEN",
        "Content-Type": "application/json"
    }
    
    payload = {
        "name": "Arbejd Dokumenter"
    }
    
    response = requests.post(
        "https://api.rememberizer.ai/api/v1/mementos/",
        headers=headers,
        data=json.dumps(payload)
    )
    
    data = response.json()
    print(data)

create_memento()
```

{% hint style="info" %}
For at teste denne API-anmodning, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token.
{% endhint %}
{% endtab %}
{% endtabs %}

## Få Memento Detaljer

{% openapi src="<https://github.com/skydeckai/rememberizer-docs/blob/production/da/.gitbook/assets/rememberizer_openapi.yml>" path="/mementos/{id}/" method="get" %}
<https://github.com/skydeckai/rememberizer-docs/blob/production/da/.gitbook/assets/rememberizer_openapi.yml>
{% endopenapi %}

### Eksempelanmodninger

{% tabs %}
{% tab title="cURL" %}

```bash
curl -X GET \
  https://api.rememberizer.ai/api/v1/mementos/123/ \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"
```

{% hint style="info" %}
For at teste denne API-anmodning, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token og `123` med et faktisk memento-ID.
{% endhint %}
{% endtab %}

{% tab title="JavaScript" %}

```javascript
const getMementoDetails = async (mementoId) => {
  const response = await fetch(`https://api.rememberizer.ai/api/v1/mementos/${mementoId}/`, {
    method: 'GET',
    headers: {
      'Authorization': 'Bearer YOUR_JWT_TOKEN'
    }
  });
  
  const data = await response.json();
  console.log(data);
};

getMementoDetails(123);
```

{% hint style="info" %}
For at teste denne API-anmodning, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token og `123` med et faktisk memento-ID.
{% endhint %}
{% endtab %}

{% tab title="Python" %}

```python
import requests

def get_memento_details(memento_id):
    headers = {
        "Authorization": "Bearer YOUR_JWT_TOKEN"
    }
    
    response = requests.get(
        f"https://api.rememberizer.ai/api/v1/mementos/{memento_id}/",
        headers=headers
    )
    
    data = response.json()
    print(data)

get_memento_details(123)
```

{% hint style="info" %}
For at teste denne API-anmodning, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token og `123` med et faktisk memento-ID.
{% endhint %}
{% endtab %}
{% endtabs %}

## Administrer Memento-dokumenter

{% openapi src="<https://github.com/skydeckai/rememberizer-docs/blob/production/da/.gitbook/assets/rememberizer_openapi.yml>" path="/mementos/memento\_document/{memento\_id}/" method="post" %}
<https://github.com/skydeckai/rememberizer-docs/blob/production/da/.gitbook/assets/rememberizer_openapi.yml>
{% endopenapi %}

### Eksempelanmodninger

{% tabs %}
{% tab title="cURL" %}

```bash
curl -X POST \
  https://api.rememberizer.ai/api/v1/mementos/memento_document/123/ \
  -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "memento": "123",
    "add": ["document_id_1", "document_id_2"],
    "folder_add": ["folder_id_1"],
    "remove": ["document_id_3"]
  }'
```

{% hint style="info" %}
For at teste denne API-anmodning, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token og brug faktiske dokument- og folder-ID'er.
{% endhint %}
{% endtab %}

{% tab title="JavaScript" %}

```javascript
const manageMementoDocuments = async (mementoId) => {
  const response = await fetch(`https://api.rememberizer.ai/api/v1/mementos/memento_document/${mementoId}/`, {
    method: 'POST',
    headers: {
      'Authorization': 'Bearer YOUR_JWT_TOKEN',
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      memento: mementoId,
      add: ["document_id_1", "document_id_2"],
      folder_add: ["folder_id_1"],
      remove: ["document_id_3"]
    })
  });
  
  const data = await response.json();
  console.log(data);
};

manageMementoDocuments(123);
```

{% hint style="info" %}
For at teste denne API-anmodning, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token og brug faktiske dokument- og folder-ID'er.
{% endhint %}
{% endtab %}

{% tab title="Python" %}

```python
import requests
import json

def manage_memento_documents(memento_id):
    headers = {
        "Authorization": "Bearer YOUR_JWT_TOKEN",
        "Content-Type": "application/json"
    }
    
    payload = {
        "memento": memento_id,
        "add": ["document_id_1", "document_id_2"],
        "folder_add": ["folder_id_1"],
        "remove": ["document_id_3"]
    }
    
    response = requests.post(
        f"https://api.rememberizer.ai/api/v1/mementos/memento_document/{memento_id}/",
        headers=headers,
        data=json.dumps(payload)
    )
    
    data = response.json()
    print(data)

manage_memento_documents(123)
```

{% hint style="info" %}
For at teste denne API-anmodning, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token og brug faktiske dokument- og folder-ID'er.
{% endhint %}
{% endtab %}
{% endtabs %}

## Slet Memento

{% openapi src="<https://github.com/skydeckai/rememberizer-docs/blob/production/da/.gitbook/assets/rememberizer_openapi.yml>" path="/mementos/{id}/" method="delete" %}
<https://github.com/skydeckai/rememberizer-docs/blob/production/da/.gitbook/assets/rememberizer_openapi.yml>
{% endopenapi %}

### Eksempelanmodninger

```bash
curl -X DELETE \
  https://api.rememberizer.ai/api/v1/mementos/123/ \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"
```

{% hint style="info" %}
For at teste dette API-opkald, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token og `123` med et faktisk memento-ID.
{% endhint %}

```javascript
const deleteMemento = async (mementoId) => {
  const response = await fetch(`https://api.rememberizer.ai/api/v1/mementos/${mementoId}/`, {
    method: 'DELETE',
    headers: {
      'Authorization': 'Bearer YOUR_JWT_TOKEN'
    }
  });
  
  if (response.status === 204) {
    console.log("Memento slettet med succes");
  } else {
    console.error("Mislykkedes at slette memento");
  }
};

deleteMemento(123);
```

{% hint style="info" %}
For at teste dette API-opkald, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token og `123` med et faktisk memento-ID.
{% endhint %}

```python
import requests

def delete_memento(memento_id):
    headers = {
        "Authorization": "Bearer YOUR_JWT_TOKEN"
    }
    
    response = requests.delete(
        f"https://api.rememberizer.ai/api/v1/mementos/{memento_id}/",
        headers=headers
    )
    
    if response.status_code == 204:
        print("Memento slettet med succes")
    else:
        print("Mislykkedes at slette memento")

delete_memento(123)
```

{% hint style="info" %}
For at teste dette API-opkald, erstat `YOUR_JWT_TOKEN` med din faktiske JWT-token og `123` med et faktisk memento-ID.
{% endhint %}

{% endtabs %


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.rememberizer.ai/da/udviklerressourcer/api-docs/mementos.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
