xAPI.js
  • xAPI.js
  • xAPI Wrapper Library
    • Introduction
    • Getting Started
    • The XAPI Class
    • Statement Resource
    • State Resource
    • Activity Profile Resource
    • Agent Profile Resource
    • About Resource
    • Agents Resource
    • Activities Resource
    • Helpers
    • Verbs
    • Attachment Usages
  • cmi5 Profile Library
    • Introduction
    • Getting Started
    • The Cmi5 Class
    • "cmi5 defined" Statement methods
    • "cmi5 allowed" Statement methods
    • Helpers
Powered by GitBook
On this page
  • createAgentProfile
  • Example
  • Parameters
  • Returns
  • setAgentProfile
  • Example
  • Parameters
  • Returns
  • getAgentProfiles
  • Example
  • Parameters
  • Returns
  • getAgentProfile
  • Example
  • Parameters
  • Returns
  • deleteAgentProfile
  • Example
  • Parameters
  • Returns

Was this helpful?

  1. xAPI Wrapper Library

Agent Profile Resource

Manage information about a particular person.

createAgentProfile

Creates or merges into an agent profile document by the agent and agent profile identifier.

Example

const agent: Agent = {
  objectType: "Agent",
  name: "Test Agent",
  mbox: "mailto:test@agent.com"
};
const profileId: string = "https://example.com/profiles/myProfileId";
const profile: DocumentJson = {
  myKey: "myValue"
};

xapi.createAgentProfile({
  agent: agent,
  profileId: profileId,
  profile: profile
});

Parameters

Parameter

Type

Required

Description

agent

true

The agent experiencing the AU.

profileId

string

true

The URI of the agent profile to be created or merged into.

profile

true

The profile data to be stored.

etag

string

false

The ETag of the original document if merging.

matchHeader

string

false

The ETag header type. Accepts "If-Match" or "If-None-Match".

contentType

string

false

The content type of the profile data.

Returns

This method returns an AxiosPromise with empty success data if successful.

setAgentProfile

Creates or overwrites an agent profile document by the agent and agent profile identifier.

Example

const agent: Agent = {
  objectType: "Agent",
  name: "Test Agent",
  mbox: "mailto:test@agent.com"
};
const profileId: string = "https://example.com/profiles/myProfileId";
const profile: Document = {
  myKey: "myValue"
};

xapi.setAgentProfile({
  agent: agent,
  profileId: profileId,
  profile: profile
});

Parameters

Parameter

Type

Required

Description

agent

true

The agent experiencing the AU.

profileId

string

true

The URI of the agent profile to be created or overwritten.

profile

true

The profile data to be stored.

etag

string

true

The ETag of the original document if overwriting.

matchHeader

string

true

The ETag header type. Accepts "If-Match" or "If-None-Match".

Returns

This method returns an AxiosPromise with empty success data if successful.

getAgentProfiles

Gets an array of agent profile identifiers by the agent.

Example

const agent: Agent = {
  objectType: "Agent",
  name: "Test Agent",
  mbox: "mailto:test@agent.com"
};

xapi.getAgentProfiles({
  agent: agent
}).then((result: AxiosResponse<string[]>) => {
  const profiles: string[] = result.data;
  console.log(profiles); // ["https://example.com/profiles/myProfileId"]
});

Parameters

Parameter

Type

Required

Description

agent

true

The agent experiencing the AU.

since

Timestamp

false

Only return Agent Profiles stored since specified Timestamp.

useCacheBuster

boolean

false

Enables cache busting.

Returns

This method returns an AxiosPromise with the success data containing an array of agent profile identifiers if successful.

getAgentProfile

Gets an agent profile document by the agent and the agent profile identifier.

Example

const agent: Agent = {
  objectType: "Agent",
  name: "Test Agent",
  mbox: "mailto:test@agent.com"
};
const profileId: string = "https://example.com/profiles/myProfileId";

xapi.getAgentProfile({
  agent: agent,
  profileId: profileId
}).then((result: AxiosResponse<Document>) => {
  const profile: Document = result.data;
  // do stuff with profile
});

Parameters

Parameter

Type

Required

Description

agent

true

The agent experiencing the AU.

profileId

string

true

The URI of the profile to be retrieved.

useCacheBuster

boolean

false

Enables cache busting.

Returns

deleteAgentProfile

Deletes an agent profile document by the agent and the agent profile identifier.

Example

const agent: Agent = {
  objectType: "Agent",
  name: "Test Agent",
  mbox: "mailto:test@agent.com"
};
const profileId: string = "https://example.com/profiles/myProfileId";

xapi.deleteAgentProfile({
  agent: agent,
  profileId: profileId
});

Parameters

Parameter

Type

Required

Description

agent

true

The agent experiencing the AU.

profileId

string

true

The URI of the profile to be deleted.

etag

string

false

The ETag of the original document.

Returns

This method returns an AxiosPromise with empty success data if successful.

PreviousActivity Profile ResourceNextAbout Resource

Last updated 3 years ago

Was this helpful?

This method returns an AxiosPromise with the success data containing the stored if successful.

Document
Agent
DocumentJson
Agent
Document
Agent
Agent
Agent