/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import * as z from "zod"; import { remap as remap$ } from "../../lib/primitives.js"; import { safeParse } from "../../lib/schemas.js"; import { Result as SafeParseResult } from "../../types/fp.js"; import * as components from "../components/index.js"; import { SDKValidationError } from "../errors/sdkvalidationerror.js"; export type CrmContactsUpdateGlobals = { /** * ID of the consumer which you want to get or push data from */ consumerId?: string | undefined; /** * The ID of your Unify application */ appId?: string | undefined; }; export type CrmContactsUpdateRequest = { /** * ID of the record you are acting upon. */ id: string; /** * Provide the service id you want to call (e.g., pipedrive). Only needed when a consumer has activated multiple integrations for a Unified API. */ serviceId?: string | undefined; /** * Include raw response. Mostly used for debugging purposes */ raw?: boolean | undefined; contact: components.ContactInput; }; export type CrmContactsUpdateResponse = { httpMeta: components.HTTPMetadata; /** * Contact updated */ updateContactResponse?: components.UpdateContactResponse | undefined; /** * Unexpected error */ unexpectedErrorResponse?: components.UnexpectedErrorResponse | undefined; }; /** @internal */ export const CrmContactsUpdateGlobals$inboundSchema: z.ZodType< CrmContactsUpdateGlobals, z.ZodTypeDef, unknown > = z.object({ consumerId: z.string().optional(), appId: z.string().optional(), }); /** @internal */ export type CrmContactsUpdateGlobals$Outbound = { consumerId?: string | undefined; appId?: string | undefined; }; /** @internal */ export const CrmContactsUpdateGlobals$outboundSchema: z.ZodType< CrmContactsUpdateGlobals$Outbound, z.ZodTypeDef, CrmContactsUpdateGlobals > = z.object({ consumerId: z.string().optional(), appId: z.string().optional(), }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace CrmContactsUpdateGlobals$ { /** @deprecated use `CrmContactsUpdateGlobals$inboundSchema` instead. */ export const inboundSchema = CrmContactsUpdateGlobals$inboundSchema; /** @deprecated use `CrmContactsUpdateGlobals$outboundSchema` instead. */ export const outboundSchema = CrmContactsUpdateGlobals$outboundSchema; /** @deprecated use `CrmContactsUpdateGlobals$Outbound` instead. */ export type Outbound = CrmContactsUpdateGlobals$Outbound; } export function crmContactsUpdateGlobalsToJSON( crmContactsUpdateGlobals: CrmContactsUpdateGlobals, ): string { return JSON.stringify( CrmContactsUpdateGlobals$outboundSchema.parse(crmContactsUpdateGlobals), ); } export function crmContactsUpdateGlobalsFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => CrmContactsUpdateGlobals$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CrmContactsUpdateGlobals' from JSON`, ); } /** @internal */ export const CrmContactsUpdateRequest$inboundSchema: z.ZodType< CrmContactsUpdateRequest, z.ZodTypeDef, unknown > = z.object({ id: z.string(), serviceId: z.string().optional(), raw: z.boolean().default(false), Contact: components.ContactInput$inboundSchema, }).transform((v) => { return remap$(v, { "Contact": "contact", }); }); /** @internal */ export type CrmContactsUpdateRequest$Outbound = { id: string; serviceId?: string | undefined; raw: boolean; Contact: components.ContactInput$Outbound; }; /** @internal */ export const CrmContactsUpdateRequest$outboundSchema: z.ZodType< CrmContactsUpdateRequest$Outbound, z.ZodTypeDef, CrmContactsUpdateRequest > = z.object({ id: z.string(), serviceId: z.string().optional(), raw: z.boolean().default(false), contact: components.ContactInput$outboundSchema, }).transform((v) => { return remap$(v, { contact: "Contact", }); }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace CrmContactsUpdateRequest$ { /** @deprecated use `CrmContactsUpdateRequest$inboundSchema` instead. */ export const inboundSchema = CrmContactsUpdateRequest$inboundSchema; /** @deprecated use `CrmContactsUpdateRequest$outboundSchema` instead. */ export const outboundSchema = CrmContactsUpdateRequest$outboundSchema; /** @deprecated use `CrmContactsUpdateRequest$Outbound` instead. */ export type Outbound = CrmContactsUpdateRequest$Outbound; } export function crmContactsUpdateRequestToJSON( crmContactsUpdateRequest: CrmContactsUpdateRequest, ): string { return JSON.stringify( CrmContactsUpdateRequest$outboundSchema.parse(crmContactsUpdateRequest), ); } export function crmContactsUpdateRequestFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => CrmContactsUpdateRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CrmContactsUpdateRequest' from JSON`, ); } /** @internal */ export const CrmContactsUpdateResponse$inboundSchema: z.ZodType< CrmContactsUpdateResponse, z.ZodTypeDef, unknown > = z.object({ HttpMeta: components.HTTPMetadata$inboundSchema, UpdateContactResponse: components.UpdateContactResponse$inboundSchema .optional(), UnexpectedErrorResponse: components.UnexpectedErrorResponse$inboundSchema .optional(), }).transform((v) => { return remap$(v, { "HttpMeta": "httpMeta", "UpdateContactResponse": "updateContactResponse", "UnexpectedErrorResponse": "unexpectedErrorResponse", }); }); /** @internal */ export type CrmContactsUpdateResponse$Outbound = { HttpMeta: components.HTTPMetadata$Outbound; UpdateContactResponse?: components.UpdateContactResponse$Outbound | undefined; UnexpectedErrorResponse?: | components.UnexpectedErrorResponse$Outbound | undefined; }; /** @internal */ export const CrmContactsUpdateResponse$outboundSchema: z.ZodType< CrmContactsUpdateResponse$Outbound, z.ZodTypeDef, CrmContactsUpdateResponse > = z.object({ httpMeta: components.HTTPMetadata$outboundSchema, updateContactResponse: components.UpdateContactResponse$outboundSchema .optional(), unexpectedErrorResponse: components.UnexpectedErrorResponse$outboundSchema .optional(), }).transform((v) => { return remap$(v, { httpMeta: "HttpMeta", updateContactResponse: "UpdateContactResponse", unexpectedErrorResponse: "UnexpectedErrorResponse", }); }); /** * @internal * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module. */ export namespace CrmContactsUpdateResponse$ { /** @deprecated use `CrmContactsUpdateResponse$inboundSchema` instead. */ export const inboundSchema = CrmContactsUpdateResponse$inboundSchema; /** @deprecated use `CrmContactsUpdateResponse$outboundSchema` instead. */ export const outboundSchema = CrmContactsUpdateResponse$outboundSchema; /** @deprecated use `CrmContactsUpdateResponse$Outbound` instead. */ export type Outbound = CrmContactsUpdateResponse$Outbound; } export function crmContactsUpdateResponseToJSON( crmContactsUpdateResponse: CrmContactsUpdateResponse, ): string { return JSON.stringify( CrmContactsUpdateResponse$outboundSchema.parse(crmContactsUpdateResponse), ); } export function crmContactsUpdateResponseFromJSON( jsonString: string, ): SafeParseResult { return safeParse( jsonString, (x) => CrmContactsUpdateResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CrmContactsUpdateResponse' from JSON`, ); }