omnipartners
Version:
Node.js wrapper for Omniparners API.
399 lines (398 loc) • 13.2 kB
TypeScript
import Api from "../../lib/Api";
import { IPartnerAccountRelationCreateInput, IPartnerAccountRelationDeleteInput, IGetUserPartnerAccountRelationsInput, IUserPartnerAccountRelation } from "../../partner-types";
import { IPartnerDataOptions, IRegisterUserAddressInput, IRegisterUserInput, IUpdateUserAddressInput, IUser, IUserAddress, IUserChild, IUserChildCreateInput, IUserChildUpdateInput, IUserConfirmLegalFormsInput, IUserDataOptions, IUserFavourites, IUserFavouritesAddInput, IUserFavouritesDeleteInput, IUserLegalFormsItems, IUserOwner, IUserPartial, IUserPartnerRelationFromGet, IUserPet, IUserPetBmiEntry, IUserPetBmiEntryAddInput, IUserPetCreateInput, IUserPetDeleteInput, IUserPetPlaceOfPurchase, IUserPetPlaceOfPurchaseDeleteInput, IUserPetPlaceOfPurchaseUpdateInput, IUserPetUpdateInput, IUserPetWeightEntry, IUserPetWeightEntryAddInput, IUserPlaceOfPurchase, IUserPreferences, IUserSegment, IUserUpdateInput, IUserUpdatePlacesOfPurchaseInput, IUserUpdateSubscriptionsInput, IUserPetDataOptions, IUsetPetWithOwner, IUserPetDietRecommendationAddInput, IUserPetDietRecommendationEntry, IUserPetDietRecommendationDeleteInput, IAddUserTagsInput, IDeleteUserTagsInput, ISocialNetwork, ISocialNetworkInput, ISocialNetworkDeleteInput, IAddPetTagsInput, IDeletePetTagsInput } from "../../types";
export interface IUserGetPartnerAccountRelationsResult {
clientof: IUserPartnerRelationFromGet[];
partof: IUserPartnerRelationFromGet[];
}
export default class Identity extends Api {
errorMap: {
9: {
message: string;
};
19: {
message: string;
};
};
deleteUser(data: {
user_guid: string;
user_context?: string;
}): Promise<any>;
updateRecoveredPassword(data: {
token: string;
password: string;
}): Promise<{
statusCode: number;
data: {
user_guid: string;
};
}>;
checkPasswordTokenValidity(data: {
token: string;
}): Promise<any>;
getAccessToken(data: {
session_token: string;
ttl: string | number;
}): Promise<{
statusCode: 0;
data: {
token: string;
};
}>;
deleteAccessToken(data: {
token: string;
}): Promise<any>;
findAccountByPhone(data: {
mobile_no: string;
include_loyalty_cards?: boolean;
}): Promise<IUserPartial>;
findAccountByEmail(data: {
email: string;
include_user_type?: string;
user_context?: string;
}): Promise<IUserPartial>;
findAccountByPublicToken(data: {
token: string;
}): Promise<{
data: {
user_guid: string;
user_updated_on: string;
};
}>;
findAccountByPartnerExtId(data: {
partner_ext_id: string;
}): Promise<any>;
recoverPassword(data: {
uid: string;
mode?: "link" | "password" | "remoteform";
url?: string;
user_context?: string;
}): Promise<any>;
recoverPasswordSMS(data: {
mobile: string;
message?: string;
}): Promise<any>;
register(data: IRegisterUserInput): Promise<{
data: IUser;
}>;
forceActivate(data: {
user_guid: string;
}): Promise<any>;
confirmUserAccount(data: {
identifier: string;
}): Promise<any>;
update(data: IUserUpdateInput, options?: {
locale?: string;
}): Promise<{
data: IUserOwner;
}>;
getUserList(data: {
first_name: string;
last_name: string;
email: string;
postcode: string;
mobile: string;
partner_ext_id: string;
partner_relationship: string;
page: number;
records_per_page: number;
}): Promise<any>;
retrieveUserSubscriptions(data: {
user_guid: string;
}): Promise<{
data: IUserPreferences;
}>;
updateSubscriptions(data: IUserUpdateSubscriptionsInput): Promise<{
statusCode: number;
data: IUserPreferences;
}>;
retrieveUserPlacesOfPurchase(data: {
user_guid: string;
}): Promise<{
data: null | IUserPlaceOfPurchase[];
}>;
updateUserPlacesOfPurchase(data: IUserUpdatePlacesOfPurchaseInput): Promise<any>;
deleteUserPlacesOfPurchase(data: {
user_guid: string;
place_id: string;
}): Promise<any>;
listUserAddress(data: {
user_guid: string;
}): Promise<{
data: IUserAddress[];
}>;
registerUserAddress(data: IRegisterUserAddressInput): Promise<{
data: IUserAddress;
}>;
updateUserAddress(data: IUpdateUserAddressInput): Promise<{
data: IUserAddress;
}>;
deleteUserAddress(data: {
user_guid: string;
address_id: string;
}): Promise<any>;
confirmLegalForm(data: IUserConfirmLegalFormsInput): Promise<any>;
getConfirmedLegalForm(data: {
user_guid: string;
}): Promise<{
data: IUserLegalFormsItems[];
}>;
revokeLegalForm(data: {
legal_form_code: string;
user_guid: string;
send_notification?: "1";
}): Promise<any>;
authenticate(data: {
identifier: string;
password: string;
data_options?: IUserDataOptions;
partner_data_options?: string;
pet_data_options?: IUserPetDataOptions;
pet_partner_type?: string;
related_partners_filter_relation?: "clientof" | "partof";
related_partners_filter_types?: string;
related_partners_filter_groups?: string;
related_partners_filter_roles?: string;
user_context?: string;
}, options?: {
locale?: string;
}): Promise<IUser>;
authenticateByGUID(data: {
user_guid: string;
data_options?: IUserDataOptions;
}): Promise<IUser>;
authenticateBySessionToken(data: {
session_token: string;
data_options?: IUserDataOptions;
}): Promise<any>;
authenticateByAccessToken({ data_options, ...data }: {
access_token: string;
data_options?: IUserDataOptions;
partner_data_options?: IPartnerDataOptions;
pet_data_options?: IUserPetDataOptions;
pet_partner_type?: string;
related_partners_filter_relation?: "clientof" | "partof";
related_partners_filter_types?: string;
related_partners_filter_groups?: string;
related_partners_filter_roles?: string;
user_context?: string;
}): Promise<IUser>;
authenticateByEmail(data: {
email: string;
data_options?: IUserDataOptions;
}): Promise<IUser>;
authenticateByExternalId({ data_options, partner_data_options, pet_data_options, ...data }: {
user_ext_id: string;
data_options?: IUserDataOptions;
pet_data_options?: IUserPetDataOptions;
partner_data_options?: IPartnerDataOptions;
pet_partner_type?: string;
related_partners_filter_xxxx?: string;
}): Promise<IUser>;
createAuthCode(data: {
type: "email" | "mobile";
value: string;
ttl: number;
}): Promise<any>;
authenticateByCode(data: {
auth_code: string;
data_options?: IUserDataOptions;
}): Promise<IUser>;
getPartnerAccountRelations(data: {
user_guid: string;
partner_relationship?: "clientof" | "partof";
partner_relationship_role?: string;
partner_groups?: string | string[];
show_not_accepted?: string;
data_options?: IPartnerDataOptions;
page?: string | number;
records_per_page?: string | number;
}): Promise<{
data: IUserGetPartnerAccountRelationsResult;
}>;
createPartnerAccountRelation(data: IPartnerAccountRelationCreateInput): Promise<any>;
updatePartnerAccountRelation(data: IPartnerAccountRelationCreateInput): Promise<any>;
deletePartnerAccountRelation(data: IPartnerAccountRelationDeleteInput): Promise<any>;
getUserPartnerAccountRelations(data: IGetUserPartnerAccountRelationsInput): Promise<{
data: {
records: {
accepted: IUserPartnerAccountRelation[];
};
page: string;
records_per_page: string;
total_record_count: string;
total_pages: number;
recordsPerPage: string;
totalRecordCount: string;
totalPages: number;
} | null;
}>;
getPets(data: {
user_guid: string;
data_options?: IUserPetDataOptions;
}, options?: {
locale?: string;
}): Promise<{
data: IUserPet[];
}>;
getPet(data: {
pet_guid: string;
data_options?: IUserPetDataOptions;
}): Promise<{
data: IUsetPetWithOwner;
}>;
getPetByExternalId(data: {
pet_ext_id: string;
data_options?: IUserPetDataOptions;
}): Promise<{
data: IUsetPetWithOwner;
statusCode: number;
}>;
createPet(data: IUserPetCreateInput): Promise<{
data: IUserPet;
}>;
deletePet(data: IUserPetDeleteInput): Promise<any>;
getPetDeletionCauses(data: {
lang?: string;
}): Promise<any>;
updatePet(data: IUserPetUpdateInput): Promise<{
data: IUserPet;
}>;
getPetPictureUrl(data: {
pet_guid: string;
w?: number;
h?: number;
}): string;
updatePetPicture(data: {
pet_guid: string;
pet_picture: IUserPetUpdateInput["pet_picture"];
}): Promise<{
statusCode: number;
}>;
updatePetPlaceOfPurchase(data: IUserPetPlaceOfPurchaseUpdateInput): Promise<{
statusCode: number;
}>;
retrievePetPlaceOfPurchase(data: {
pet_guid: string;
}): Promise<{
data: IUserPetPlaceOfPurchase[] | null;
}>;
deletePetPlaceOfPurchase(data: IUserPetPlaceOfPurchaseDeleteInput): Promise<{
statusCode: number;
data: any;
}>;
addPetWeight(data: IUserPetWeightEntryAddInput): Promise<any>;
getPetWeight(data: {
pet_guid: string;
partner_ext_id?: string;
}): Promise<{
statusCode: number;
data: IUserPetWeightEntry[];
}>;
deletePetWeight(data: Pick<IUserPetWeightEntryAddInput, "date" | "pet_guid" | "partner_ext_id">): Promise<any>;
addPetBmi(data: IUserPetBmiEntryAddInput): Promise<any>;
getPetBmi(data: {
pet_guid: string;
partner_ext_id?: string;
}): Promise<{
statusCode: number;
data: IUserPetBmiEntry[];
}>;
deletePetBmi(data: Pick<IUserPetBmiEntryAddInput, "date" | "pet_guid" | "partner_ext_id">): Promise<any>;
addPetDietRecommendation(data: IUserPetDietRecommendationAddInput): Promise<any>;
getPetDietRecommendation(data: {
pet_guid: string;
creation_date?: string;
partner_ext_id?: string;
}): Promise<{
data: IUserPetDietRecommendationEntry[];
}>;
deletePetDietRecommendation(data: IUserPetDietRecommendationDeleteInput): Promise<any>;
addPetTags(data: IAddPetTagsInput): Promise<any>;
deletePetTags(data: IDeletePetTagsInput): Promise<any>;
createChild(data: IUserChildCreateInput, options?: {
locale?: string;
}): Promise<{
data: IUserChild;
}>;
getChildren(data: {
user_guid: string;
}): Promise<{
data: IUserChild[];
}>;
updateChild(data: IUserChildUpdateInput, options?: {
locale?: string;
}): Promise<{
data: IUserChild;
}>;
getUserSegments(data: {
user_guid: string;
}): Promise<{
data: IUserSegment[];
}>;
flushUserSegmentCache(data: {
user_guid: string;
}): Promise<{
data: {
statusCode: number;
};
}>;
addUserFavourites(data: IUserFavouritesAddInput): Promise<{
statusCode: number;
}>;
getUserFavourites(data: {
user_guid: string;
type?: string;
source?: string;
}): Promise<{
data: IUserFavourites[];
}>;
deleteUserFavourites(data: IUserFavouritesDeleteInput): Promise<{
statusCode: number;
}>;
getFormatPassword(data?: {
user_guid?: string;
user_email?: string;
user_username?: string;
}): Promise<{
data: {
password_format: string | null;
alt_password_format: string | null;
};
}>;
getUserTags(data: {
user_guid: string;
}): Promise<{
data: string[];
}>;
addUserTags(data: IAddUserTagsInput): Promise<{
data: {
added_tags: string[];
};
}>;
deleteUserTags(data: IDeleteUserTagsInput): Promise<{
data: {
statusCode: number;
};
}>;
getUserSocialNetwork(data: {
user_guid: string;
}): Promise<{
data: ISocialNetwork[];
}>;
addUserSocialNetwork(data: ISocialNetworkInput): Promise<{
data: {
statusCode: 0;
};
}>;
updateUserSocialNetwork(data: ISocialNetworkInput): Promise<{
data: {
statusCode: 0;
};
}>;
deleteUserSocialNetwork(data: ISocialNetworkDeleteInput): Promise<{
data: {
statusCode: 0;
};
}>;
}