add( 'provider', $this->getForm(), [ 'label' => 'mautic.integration.form.provider.settings', 'required' => false, 'data' => $data['provider'] ?? [], ] ); } catch (NoFormNeededException) { } } public function getAuthenticationType() { return 'api'; } /** * Retrieves an Adapter object for this integration. * * @return Adapter */ abstract public function getAdapter(); /** * Retrieves FQCN form type class name. * * @throws NoFormNeededException */ abstract public function getForm(): string; /** * Retrieves the public URL for a given key. * * @param string $key * * @return string */ abstract public function getPublicUrl($key); public function getSupportedFeatures() { return ['cloud_storage']; } }