fjffk简单的咖啡店科开发2方法2 环滁皆山也。其西南诸峰,林壑尤美,望之蔚然而深秀者,琅琊也。山行六七里,渐闻水声潺潺,而泻出于两峰之间者,酿泉也 ??????????????????????????????? ??????????????/????????????????? ............/................... .........................../... ??????????????????????????????? >>>>>>>>>>>>>/>>>>>>>>>>>>>>>>> ÿØÿà JFIF    ÿÛ „  ( %!1!%)+//.383,7(-.+  -%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ     ÿÄ J    ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ   ÿÄ *  !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú "SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5 ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍѶ¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e ríV ?> ......................................... ............................................................................. <<<<<<<<<<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>/>>>>>>>>>>>>>>>>>> <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< >>>>>>>>>>>>>>>>>>>>>>>>>>>>>> dsdfEnums/CaptionStyle.php000064400000004126152665637370011011 0ustar00 'Normal Black', self::NORMAL_BLUE => 'Normal Blue', self::NORMAL_RED => 'Normal Red', self::NORMAL_WHITE => 'Normal White', self::NEO => 'Neo', self::BRICK => 'Brick', self::FRENZY => 'Frenzy', self::VERANA => 'Verana', self::MUSTARD => 'Mustard', self::GLOW => 'Glow', self::MINT => 'Mint', self::COOLERS => 'Coolers', self::BILO => 'Bilo', self::TOONS => 'Toons', self::DEEP_BLUDE => 'Deep Blue', self::MYSTIQUE => 'Mystique', self::CAUTION => 'Caution', self::DUALITY => 'Duality' }; } /** * get thumbnail */ public function thumbnail(): string { return match ($this) { default => '' }; } public function style(): string { return match ($this) { default => 'border-radius: 1rem; padding: 16px 16px; box-decoration-break: clone; -webkit-box-decoration-break: clone; background-color: transparent; font-family: Montserrat; line-height: 1.2; font-size: 30px; text-shadow: none; text-align: center;' }; } } Enums/AspectRatio.php000064400000000755152665637370010615 0ustar00 'Ratio 16:9', self::RATIO_1_1 => 'Ratio 1:1', self::RATIO_9_16 => 'Ratio 9:16' }; } } Enums/VisualStyle.php000064400000024555152665637370010667 0ustar00 'Avatar Bubble (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::DRAMATIC_TEMPLATE => 'Dramatic (Applicable to aspect_ratio 9x16)', self::DYNAMIC_GREEN_SCREEN_EFFECT => 'Dynamic Green Screen Effect (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::DYNAMIC_PRODUCT_TEMPLATE => 'Product (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::DYNAMIC_RESPONSE_BUBBLE_TEMPLATE => 'Response Bubble (Applicable to aspect_ratio 9x16)', self::ENHANCED_VANILLA_TEMPLATE => 'Dynamic Vanilla (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::FEATURE_HIGHLIGHT_TEMPLATE => 'Feature Highlight (Applicable to aspect_ratio 9x16, 1x1)', self::FULLSCREEN_TEMPLATE => 'Full Screen (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::FULLSCREEN_V2_TEMPLATE => 'Full Screen V2 (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::GREENSCREEN_EFFECT_TEMPLATE => 'Green Screen Effect (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::LEGO_TEMPLATE => 'Lego (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::MOTIONCARDS_TEMPLATE => 'Motion Cards (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::OVERCARDS_TEMPLATE => 'Over Cards (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::QUICK_TRANSITION_TEMPLATE => 'Quick Transition (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::SCRIBBLE_TEMPLATE => 'Scribble (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::SIDEBYSIDE_TEMPLATE => 'Side by Side (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::SIMPLE_AVATAR_OVERLAY_TEMPLATE => 'Product Presenter (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::TOPBOTTOM_TEMPLATE => 'Top & Bottom (Applicable to aspect_ratio 9x16, 1x1)', self::TWITTERFRAME_TEMPLATE => 'Twitter Frame (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::VANILLA_TEMPLATE => 'Vanilla (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::VLOG_TEMPLATE => 'Vlog (Applicable to aspect_ratio 9x16)', self::LEGO_VISUAL_EMOTIONAL => 'Emotional (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::LEGOVISUAL_CUTEPETS => 'Cute Pets (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::LEGO_VISUAL_AVATAR_FOCUS_INTRO => 'Avatar Focus Intro (Applicable to aspect_ratio 9x16, 16x9, 1x1)', self::LEGO_SCRIPT_NEGATIVE_HOOK => "Don't Use This If You Want... (Applicable to aspect_ratio 9x16, 1x1, 16x9", self::LEGO_SCRIPT_NUMBER_ONE_HOOK => 'The #1 Hack You Need (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_EVER_WONDER_HOOK => 'Ever Wonder Why? (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_SECRET_HOOK => 'Wish I Could Keep This Secret (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_WHAT_HAPPENS_HOOK => 'What Happens If You Try This? (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_ANYONEELSE_HOOK => 'That One Thing We All Have (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_AMAZED_HOOK => 'Still Amazed by This (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_2025_HOOK => 'Hack 2025 Like This (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LOGO_SCRIPT_HATTEME_HOOK => "They'll Hate Me for This (Applicable to aspect_ratio 9x16, 1x1, 16x9)", self::LOGO_SCRIPT_RESPONSEBUBBLE_TEXTOVERLAY => 'Response bubble (Applicable to aspect_ratio 9x16, 1x1)', self::LEGO_SCRIPT_HEY_ALGORITHMHOOK => 'Hey Algorithm (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_CANNOT_BELIEVEHOOK => 'Cannot Believe This (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_FINALLY_CONFIDENTHOOK => 'Finally Confident (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_PREMIUMFELLING_HOOK => 'Premium Feeling (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_FIRSTTIME_FULLOOK => 'First Time Full (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_LONGLINE_REASONHOOK => 'Long Line Reason (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_MISSINGOUT_ALERTHOOK => 'Missing Out Alert (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_BETTERTODAYVERSION_TOOK => 'Better Today Version (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_BIGHAPPENING_HOOK => 'Big Happening (Applicable to aspect_ratio 9x16, 1x1, 16x9) ', self::LEGO_SCRIPT_PRICE_DROPREGRET_HOOK => 'Price Drop Regret (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_GROUPBUY_FRUSTRATION_HOOK => 'Group Buy Frustration (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_STOPEAFFOD_EXCUSE_HOOK => 'Stop Afford Excuse (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_LEFETOOSHORT_DISCOUNDHOOK => 'Life Too Short Discount (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_HUGEPRICE_DROPRUSH_HOOK => 'Huge Price Drop Rush (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_PRICECOULD_GOLOWER_HOOK => 'Price Could Go Lower (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_STILLFULL_PRICEHOOK => 'Still Full Price (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_SECRETDISCOUNT_SHAREHOOK => 'Secret Discount Share (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_VOUCHERSAVINGS_ALERTHOOK => 'Voucher Savings Alert (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_COUPONDISCOVERY_REGRETHOOK => ' Coupon Discovery Regret (Applicable to aspect_ratio 9x16, 1x1, 16x9)', self::LEGO_SCRIPT_BESTDEAL_EVERHOOK => 'Best Deal Ever (Applicable to aspect_ratio 9x16, 1x1, 16x9)' }; } } Enums/Voice/Type.php000064400000000505152665637370010356 0ustar00 'Text' }; } } Enums/Avatar/AgeRange.php000064400000001014152665637370011253 0ustar00 'Child', self::TEEN => 'Teen', self::ADULT => 'Adult', self::SENIOR => 'Senior' }; } } Enums/Avatar/Style.php000064400000000742152665637370010711 0ustar00 'Selfie', self::PRESENTER => 'Presenter', self::OTHER => 'Other' }; } } Enums/Avatar/Location.php000064400000001037152665637370011357 0ustar00 'Outdoor', self::FANTASY => 'Fantasy', self::INDOOR => 'Indoor', self::OTHER => 'Other' }; } } Enums/Avatar/Gender.php000064400000000722152665637370011013 0ustar00 'Male', self::FEMALE => 'Female', self::NONBINARY => 'Non Binary' }; } } Enums/Language.php000064400000003474152665637370010123 0ustar00 'Arabic', self::BG => 'Bularian', self::CS => 'Czech', self::DA => 'Danish', self::DE => 'German', self::EL => 'Greek', self::EN => 'English', self::ES => 'Spanish', self::FI => 'Finnish', self::FR => 'French', self::HI => 'Hindi', self::HR => 'Croatian', self::ID => 'Indonesian', self::IT => 'Italian', self::JA => 'Japanese', self::KO => 'Korean', self::MS => 'Malay', self::NL => 'Dutch', self::PL => 'Polish', self::PT => 'Portugues', self::RO => 'Romanian', self::RU => 'Russian', self::SK => 'Slovak', self::SV => 'Swedish', self::TA => 'Tamil', self::TL => 'Tagalog', self::TR => 'Turkish', self::UK => 'Ukrainian', self::ZH => 'Chinese' }; } } Enums/VideoLength.php000064400000000706152665637370010603 0ustar00 '15s', self::LENGTH_30 => '30s', self::LENGTH_60 => '60s' }; } } Enums/ScriptStyle.php000064400000004516152665637370010663 0ustar00 'Benefits', self::BRAND_STORY_V2 => 'Brand Story', self::CALL_TO_ACTION_V2 => 'Call To Action', self::DISCOVERY_WRITER => 'Discovery', self::DONT_WORRY_WITTER => "Don't worry", self::EMOTIONAL_WRITER => 'Emotional', self::GENZ_WRITER => 'Gen Z', self::HOW_TO_V2 => 'How To', self::LET_ME_SHOW_YOU_WRITER => 'Let me Show You', self::MOTIVATIONAL_WRITER => 'Motivational', self::PROBLEM_SOLUTION_V2 => 'Problem Solution', self::PROBLEM_SOLUTION_WRITER => 'Problem-Solution', self::PRODUCT_HIGHLIGHTS_V2 => 'Product Highlights', self::PRODUCT_LIFESTYTLE_V2 => 'Product Lifestyle', self::RESPONSE_BUBBLE_WRITER => 'Response Bubble', self::SPECIAL_OFFER_V2 => 'Special Offers', self::STORY_TIME_WRITER => 'Storytime', self::THREE_REASONS_WRITER => '3 Reasons Why', self::TRENDING_TOPICS_V2 => 'Trending Topics', self::DIY => 'DIY', }; } } Concerns/HasAuth.php000064400000001522152665637370010410 0ustar00 $this->X_API_ID, 'X-API-KEY' => $this->X_API_KEY, ]; } /** * make sure if auth is provided or not */ public function ensureAuth(): bool { if (empty($this->X_API_ID) || empty($this->X_API_KEY)) { return false; } return true; } /** * set the auth from parameter */ public function authFrom(string $x_api_id, string $x_api_key): void { $this->X_API_ID = $x_api_id; $this->X_API_KEY = $x_api_key; } } Concerns/HasStatusResponse.php000064400000001630152665637370012511 0ustar00successful()) { return FacadesResponse::json([ 'status' => 'success', 'resData' => $res->json(), ]); } Log::error('Creatify api response error: ', [ 'status' => $res->status(), 'body' => $res->body(), ]); return FacadesResponse::json([ 'status' => 'error', 'message' => __('Something went wrong. Please contact support for assistance.'), ], $res->status()); } } Api/Lipsyncs.php000064400000003703152665637370007621 0ustar00client->request('post', 'api/lipsyncs/', $params); return $this->client->jsonStatusResponse($res); } /** * Get lipsync items * * @see https://docs.creatify.ai/api-reference/lipsyncs/get-apilipsyncs */ public function getLipsyncItems(?string $ids = null): JsonResponse { $res = $this->client->request('get', 'api/lipsyncs/', $ids ? ['ids' => $ids] : []); return $this->client->jsonStatusResponse($res); } /** * Get lipsync item by id * * @see https://docs.creatify.ai/api-reference/lipsyncs/get-apilipsyncs- */ public function getLipsyncById(string $id): JsonResponse { $res = $this->client->request('get', "api/lipsyncs/$id/"); return $this->client->jsonStatusResponse($res); } /** * Generate Preview of Lipsync * * @see https://docs.creatify.ai/api-reference/lipsyncs/post-apilipsyncs-preview */ public function generatePreviewOfLipsync(array $params): JsonResponse { $res = $this->client->request('post', 'api/lipsyncs/preview/', $params); return $this->client->jsonStatusResponse($res); } /** * Redner lipsync task * * @see https://docs.creatify.ai/api-reference/lipsyncs/post-apilipsyncs-render */ public function renderLipsyncTask(string $id): JsonResponse { $res = $this->client->request('post', "api/lipsyncs/$id/"); return $this->client->jsonStatusResponse($res); } } Api/BaseApiClient.php000064400000002535152665637370010462 0ustar00apiBaseUrl = $apiBaseUrl; $this->authFrom($apiId, $apiKey); } /** * get full api endpoint */ public function getFullUrl(string $url): string { return rtrim($this->apiBaseUrl, '/') . '/' . ltrim($url, '/'); } /** * general request */ public function request(string $method, string $url, ?array $params = []): Response { return Http::withHeaders($this->getHeaders())->{$method}($this->getFullUrl($url), $params); } /** * get headers */ protected function getHeaders(?array $headers = []): array { $authHeaders = $this->authHeader(); $defaultHeaders = [ 'Content-Type' => 'application/json', 'Accept' => 'application/json', ]; return array_merge($authHeaders, $defaultHeaders, $headers); } } Api/Links.php000064400000003725152665637370007101 0ustar00client->request('get', 'api/links/', $ids ? ['ids' => $ids] : []); return $this->client->jsonStatusResponse($res); } /** * API that creates a link from url. Creating a link through this endpoint costs 1 credit. * * @see https://docs.creatify.ai/api-reference/links/post-apilinks */ public function createLink(string $url): JsonResponse { $res = $this->client->request('post', 'api/links/', ['url' => $url]); return $this->client->jsonStatusResponse($res); } /** * API that creates a link from parameters. * * @see https://docs.creatify.ai/api-reference/links/post-apilink_with_params */ public function createLinkWithParams(array $params): JsonResponse { $res = $this->client->request('post', 'api/links/link_with_params/', $params); return $this->client->jsonStatusResponse($res); } /** * API that updates a link. * * @see https://docs.creatify.ai/api-reference/links/put-apilinks- */ public function updateLink(string $id, array $params): JsonResponse { $res = $this->client->request('put', "api/links/$id/", $params); return $this->client->jsonStatusResponse($res); } /** * get link by id * * @see https://docs.creatify.ai/api-reference/links/get-apilinks- */ public function getLinkById(string $id): JsonResponse { $res = $this->client->request('get', "api/links/$id/"); return $this->client->jsonStatusResponse($res); } } Api/Voices.php000064400000001611152665637370007241 0ustar00client->request('get', 'api/voices/'); return $this->client->jsonStatusResponse($res); } /** * Get voices with pagination * * * @see https://docs.creatify.ai/api-reference/voices/get-apivoices-paginated * * @param array $params //prvoide page and page_size for parameter */ public function getVoicesWithPagination(array $params): JsonResponse { $res = $this->client->request('get', 'api/voices/paginated/', $params); return $this->client->jsonStatusResponse($res); } } Api/AIScripts.php000064400000002375152665637370007662 0ustar00client->request('post', 'api/ai_scripts/', $params); return $this->client->jsonStatusResponse($res); } /** * Retrieve a list of videos * * @see https://docs.creatify.ai/api-reference/ai-scripts/get-ai-scripts */ public function getAIScriptItems(?array $params = []): JsonResponse { $res = $this->client->request('get', 'api/ai_scripts/', $params); return $this->client->jsonStatusResponse($res); } /** * Get AI Script item by id * * @see https://docs.creatify.ai/api-reference/ai-scripts/get-ai-scripts- */ public function getAIScriptItemById(string $id): JsonResponse { $res = $this->client->request('get', "api/ai_scripts/$id/"); return $this->client->jsonStatusResponse($res); } } Api/Musics.php000064400000001456152665637370007263 0ustar00client->request('get', 'api/music_categories/'); return $this->client->jsonStatusResponse($res); } /** * Get musics * * @see https://docs.creatify.ai/api-reference/musics/get-api-musics */ public function getMusics(?array $params = []): JsonResponse { $res = $this->client->request('get', 'api/musics/', $params); return $this->client->jsonStatusResponse($res); } } Api/LinkToVideos.php000064400000006474152665637370010377 0ustar00client->request('post', 'api/link_to_videos/', $params); return $this->client->jsonStatusResponse($res); } /** * Get video result * * @see https://docs.creatify.ai/api-reference/link_to_videos/get-apilink_to_videos- */ public function getVideoResult(string $id): JsonResponse { $res = $this->client->request('get', "api/link_to_videos/$id/"); return $this->client->jsonStatusResponse($res); } /** * Retrieve a list of videos, with an optional ids param to filter vdieo by their UUIDs. * * @see https://docs.creatify.ai/api-reference/link_to_videos/get-apilink_to_videos */ public function getVideoHistory(?string $ids = null): JsonResponse { $res = $this->client->request('get', 'api/link_to_videos/', $ids ? ['ids' => $ids] : null); return $this->client->jsonStatusResponse($res); } /** * This endpoint generates a preiview of video before rendering the final video. * * @see https://docs.creatify.ai/api-reference/link_to_videos/post-apilink_to_videos_preview */ public function generatePreviewVideoFromLink(array $params): JsonResponse { $res = $this->client->request('post', 'api/link_to_videos/preview/', $params); return $this->client->jsonStatusResponse($res); } /** * This endpoint renders a video with preview genereated. * * @see https://docs.creatify.ai/api-reference/link_to_videos/post-apilink_to_videos_render */ public function renderVideo(string $id): JsonResponse { $res = $this->client->request('post', "api/link_to_videos/$id/render/"); return $this->client->jsonStatusResponse($res); } /** * This endpoint generates a list of preview videos asynchronously before rendering the final video * * @see https://docs.creatify.ai/api-reference/link_to_videos/post-apilink_to_videos_preview_list_aysnc */ public function generateListOfPreviews(array $params): JsonResponse { $res = $this->client->request('post', 'api/link_to_videos/preview_list_async/', $params); return $this->client->jsonStatusResponse($res); } /** * This endpoint renders a video from the list of previews generated by Generate a list of Previews Async API. * * * @see https://docs.creatify.ai/api-reference/link_to_videos/post-apilink_to_videos_render_single_preview * * @param string $id //video id to render * @param string $media_job //media_job is the unique identifier of a preview video url. You can get it from the previews field. */ public function renderVideoFromListOfPreviews(string $id, string $media_job): JsonResponse { $res = $this->client->request('post', "api/link_to_videos/$id/render_single_preview/", ['media_job' => $media_job]); return $this->client->jsonStatusResponse($res); } } Api/Workspace.php000064400000000764152665637370007757 0ustar00client->request('get', 'api/remaining_credits/'); return $this->client->jsonStatusResponse($res); } } Api/Avatar.php000064400000005255152665637370007237 0ustar00client->request('get', 'api/personas/', $params); return $this->client->jsonStatusResponse($res); } /** * Get all avaialble avatars with pagination * * * @see https://docs.creatify.ai/api-reference/personas/get-apipersonas-paginated * * @param array $params //prvoide page and page_size for parameter */ public function getAllAvailableAvatarsWithPagination(array $params): JsonResponse { $res = $this->client->request('get', 'api/personas/paginated/', $params); return $this->client->jsonStatusResponse($res); } /** * get all custom avatars * * @see https://docs.creatify.ai/api-reference/personas/get-apipersonas-v2 */ public function getAllCustomAvatars(?array $params = []): JsonResponse { $res = $this->client->request('get', 'api/personas_v2/', $params); return $this->client->jsonStatusResponse($res); } /** * get avatar by id * * @see https://docs.creatify.ai/api-reference/personas/get-apipersonas- */ public function getAvatarById(string $id): JsonResponse { $res = $this->client->request('get', "api/personas/$id/"); return $this->client->jsonStatusResponse($res); } /** * create custom avatar * * @see https://docs.creatify.ai/api-reference/personas/post-apipersonas */ public function createCustomAvatar(array $params): JsonResponse { $res = $this->client->request('post', 'api/personas_v2/', $params); return $this->client->jsonStatusResponse($res); } /** * Get the number of Custom Avatars you can create * * @see https://docs.creatify.ai/api-reference/personas/get-apipersonas-count */ public function getCustomAvatarCreationAvailabilityByNumber(): JsonResponse { $res = $this->client->request('get', 'api/personas_v2/count/'); return $this->client->jsonStatusResponse($res); } /** * delete custom avatar * * @see https://docs.creatify.ai/api-reference/personas/delete-apipersonas- */ public function deleteCustomAvatar(string $id): JsonResponse { $res = $this->client->request('delete', "api/personas/$id/"); return $this->client->jsonStatusResponse($res); } } CreatifyService.php000064400000003146152665637370010374 0ustar00client = new BaseApiClient($apiId, $apiKey, $baseUrl); } public function links(): Links { return new Links($this->client); } public function avatar(): Avatar { return new Avatar($this->client); } public function aiScripts(): AIScripts { return new AIScripts($this->client); } public function linkToVideos(): LinkToVideos { return new LinkToVideos($this->client); } public function lipsyncs(): Lipsyncs { return new Lipsyncs($this->client); } public function musics(): Musics { return new Musics($this->client); } public function voices(): Voices { return new Voices($this->client); } public function workspace(): Workspace { return new Workspace($this->client); } }