Skip to main content
Manage user profiles (User, Department, Merchant) in your organization.

Methods

getProfiles()

Get a paginated list of profiles. Signature:
getProfiles(
  request?: GetProfilesRequest,
  requestOptions?: RequestOptions
): Promise<ProfilesResponse>
Parameters:
ParameterTypeRequiredDescription
request.skipnumberNoNumber of records to skip (default: 0)
request.takenumberNoNumber of records to retrieve (default: 10, max: 100)
Example:
// Get first 10 profiles
const profiles = await client.profiles.getProfiles();

// Get profiles with pagination
const profiles = await client.profiles.getProfiles({
  skip: 0,
  take: 25
});

console.log('Profiles:', profiles.data);
console.log('Pagination:', profiles.data.pagination);
Response:
{
  data: {
    profiles: Profile[],
    pagination: {
      skip: number,
      take: number,
      total: number
    }
  }
}

create()

Create a new profile. Signature:
create(
  request: CreateProfileRequest,
  requestOptions?: RequestOptions
): Promise<CreateProfileResponse>
Parameters:
ParameterTypeRequiredDescription
request.referencestringYesUnique identifier for the profile in your system
request.type'User' | 'Department' | 'Merchant'YesType of profile
Example:
// Create a User profile
const profile = await client.profiles.create({
  reference: 'user-123',
  type: 'User'
});

console.log('Created profile:', profile.data);
Response:
{
  data: {
    reference: string,
    type: 'User' | 'Department' | 'Merchant'
  }
}
Throws:
  • BadRequestError - Invalid request parameters
  • UnauthorizedError - Missing or invalid API key
  • InternalServerError - Server error

Profile Types

  • User: Individual users in your system
  • Department: Organizational units or departments
  • Merchant: Business entities or merchants

Complete Example

import { OumlaSdkApiClient, OumlaSdkApiEnvironment } from '@oumla/sdk';

const client = new OumlaSdkApiClient({
  environment: OumlaSdkApiEnvironment.Sandbox,
  apiKey: 'your-api-key'
});

async function manageProfiles() {
  // Create a profile
  const newProfile = await client.profiles.create({
    reference: 'merchant-001',
    type: 'Merchant'
  });
  console.log('Created:', newProfile.data);

  // List all profiles
  const allProfiles = await client.profiles.getProfiles({
    skip: 0,
    take: 100
  });
  console.log('Total profiles:', allProfiles.data.pagination.total);
  console.log('Profiles:', allProfiles.data.profiles);
}