Skip to contentSkip to navigationSkip to topbar

Create Observations


(information)

Legal information

Conversation Memory, including the APIs, may use artificial intelligence or machine learning technologies and is subject to the terms of the Predictive and Generative AI/ML Features Addendum(link takes you to an external page). For more details on AI usage and data, see the AI Nutrition Facts.

Conversation Memory is not a HIPAA Eligible Service or PCI compliant and should not be enabled in workflows that are subject to HIPAA or PCI.

Conversation Memory is not intended for use with sensitive information about individuals. Twilio does not control what information comes from conversation channels and relies on you to ensure the data in customer profiles aligns with our acceptable use policy. Twilio does have limited guardrails in the form of a prompt exclusion that is designed to provide a minimal screening against inclusion of GDPR special category data(link takes you to an external page). As a reminder our profile technology uses generative artificial intelligence. Because generative artificial intelligence can make mistakes, review all outputs to ensure that the profile is correct.

Conversations products are only available in the new Twilio Console(link takes you to an external page). If your account hasn't been migrated, you'll be redirected to the legacy Console where these products won't appear.

POST/v1/Stores/{storeId}/Profiles/{profileId}/Observations

Base url: https://memory.twilio.com (base url)

Create one or more transient observations associated with the specified profile. Supports both single observation creation and batch creation of up to 10 observations. Supports request compression for large batch operations and response compression for the response. All observations will be automatically indexed for semantic search capabilities. The content can be up to 4KB in length and should contain relevant information about the profile. The createdAt and updatedAt timestamps will be automatically set to the current time. Each observation will be created with a unique ID in Twilio Type ID (TTID) format.


Request

create-profile-observation-request page anchor

Authentication

authentication page anchor
Property nameTypeRequiredPIIDescription
accept-Encodingstring

Optional

Not PII

Compression algorithms supported by the client (e.g., gzip, deflate, br)

Example: gzip, deflate, brPattern: ^[a-zA-Z0-9, .-]*$Max length: 200

content-Encodingenum<string>

Optional

Compression algorithm used for the request body (e.g., gzip, deflate, br)

Example: gzipPossible values:
gzipdeflatebrcompress
Property nameTypeRequiredPIIDescription
storeIdstring
required

A unique Memory Store ID using Twilio Type ID (TTID) format

Example: mem_store_00000000000000000000000000Pattern: ^mem_(store|service)_[0-7][0-9a-z]{25}$

profileIdstring
required

The unique identifier for the profile using Twilio Type ID (TTID) format.

Example: mem_profile_00000000000000000000000000Pattern: ^mem_profile_[0-7][0-9a-z]{25}$
Encoding type:application/json
SchemaExample
Property nameTypeRequiredPIIDescriptionChild properties
observationsarray[object]
required

Array of observations to create in a single batch operation.

Min items: 1Max items: 10

202308400401403404429500503

Observation creation accepted and is being processed.

Schema
Property nameTypeRequiredPIIDescriptionChild properties
messagestring

Optional

Confirmation message for the operation.

Example: Observations creation acceptedMin length: 1Max length: 255
Create ObservationsLink to code sample: Create Observations
1
// Download the helper library from https://www.twilio.com/docs/node/install
2
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";
3
4
// Find your Account SID and Auth Token at twilio.com/console
5
// and set the environment variables. See http://twil.io/secure
6
const accountSid = process.env.TWILIO_ACCOUNT_SID;
7
const authToken = process.env.TWILIO_AUTH_TOKEN;
8
const client = twilio(accountSid, authToken);
9
10
async function createProfileObservation() {
11
const observation = await client.memory.v1
12
.observations(
13
"mem_store_00000000000000000000000000",
14
"mem_profile_00000000000000000000000000"
15
)
16
.create({
17
observations: [
18
{
19
content:
20
"Customer expressed frustration with billing process during call on 2025-01-15. Mentioned difficulty understanding charges.",
21
occurredAt: "2025-01-15T14:30:00Z",
22
source: "customer_service",
23
},
24
],
25
});
26
27
console.log(observation.message);
28
}
29
30
createProfileObservation();

Response

Note about this response
1
{
2
"message": "message"
3
}