UNPKG

@devmehq/sdk-js

Version:

DEV.ME SDK for JavaScript & TypeScript for Server & Browser, Compatible with Node.js & React & Vue.js & Angular

2,460 lines 148 kB
/** * DEV.ME API Documentation * **DEV.ME API Platform** - 19 powerful services across 7 categories **Validation & Verification:** [Email Validation API](https://dev.me/products/email) • [Phone Validation API](https://dev.me/products/phone) • [IP Geolocation API](https://dev.me/products/ip) **Financial & Currency:** [Currency Exchange API](https://dev.me/products/currency) • [Currency List API](https://dev.me/products/currency-list) **Domain & Security:** [Domain WHOIS API](https://dev.me/products/domain-whois) • [DNS Lookup API](https://dev.me/products/dns-lookup) • [Domain Tools API](https://dev.me/products/domain-tools) **Content & Media:** [QR Code Generator API](https://dev.me/products/qr-code-generator) • [Image Placeholders API](https://dev.me/products/image-placeholder) • [Image Optimization API](https://dev.me/products/image-optimizer) **URL & Web:** [URL Shortening API](https://dev.me/products/short-url) • [Web Scraping API](https://dev.me/products/url-scrapper) • [URL Metadata API](https://dev.me/products/url-metadata) • [One-Time URL API](https://dev.me/products/onetime-url) **Global Data:** [Country Data API](https://dev.me/products/country) • [City Data API](https://dev.me/products/city) **Management:** [API Key Management](https://dev.me/dashboard) • [API Usage Analytics](https://dev.me/dashboard) **Quick Start:** Use API key `demo-key` for testing • Visit [dev.me](https://dev.me) for complete documentation **Authentication:** Header `x-api-key: YOUR_API_KEY` or Query Parameter `?x-api-key=YOUR_API_KEY` **[Rate Limits](https://dev.me/pricing):** Free (500/mo) • Essential (15K/mo) • Standard (60K/mo) • Professional (1M/mo) • Enterprise (Unlimited) **Support:** support@dev.me • [Documentation](https://dev.me/documentation) * * The version of the OpenAPI document: 1.0.0 * Contact: support@dev.me */ import type { AxiosInstance, AxiosPromise, RawAxiosRequestConfig } from 'axios'; import type { RequestArgs } from './base'; import { BaseAPI } from './base'; import type { Configuration } from './configuration'; /** * */ export interface ApiUsageItem { /** * Date of usage */ date?: string; /** * Service name */ service?: string; /** * Number of requests */ count?: number; /** * User ID */ userId?: string; } /** * */ export interface BulkShortUrlItem { /** * Original URL to shorten */ url?: string; /** * Domain to use for short URL */ domain?: string; /** * Custom suffix for the short URL (optional) */ suffix?: string; } /** * */ export interface BulkShortUrlResult { /** * Whether the URL was created successfully */ success?: boolean; /** * Original URL */ url?: string; /** * Generated short URL (if successful) */ shortUrl?: string; /** * Domain used */ domain?: string; /** * Short ID (if successful) */ sid?: string; /** * Error message (if failed) */ error?: string; } /** * */ export interface CapitalInfo { /** * Latitude and longitude of capital */ latlng?: Array<number>; } /** * */ export interface CarInfo { /** * Car signs */ signs?: Array<string>; /** * Driving side (left/right) */ side?: string; } /** * Currency conversion response */ export interface ConvertCurrencyOut { /** * Source currency code */ from: string; /** * Target currency code */ to: string; /** * Exchange rate used */ exchangeRate: number; /** * Timestamp of the rate */ rateTime: string; /** * Original amount */ originalAmount: number; /** * Converted amount */ convertedAmount: number; /** * Human-readable conversion text */ convertedText: string; /** * Data provider used (if available) */ provider?: string; /** * Whether the rate was cached */ cached?: boolean; /** * Performance metrics (only when getPerformanceData=1) */ performance?: object; } /** * */ export interface CountryName { /** * Common country name */ common?: string; /** * Official country name */ official?: string; /** * Native names by language code */ nativeName?: object; } /** * */ export interface CreateApiKeyIn { /** * Name/description for the API key */ name?: string; /** * List of services this key can access */ services?: Array<string>; /** * Whether to enable the API key immediately */ isEnabled?: boolean; } /** * */ export interface CreateBulkShortUrlsRequest { /** * Array of URLs to shorten (max 100) */ items?: Array<BulkShortUrlItem>; /** * Custom batch ID for this bulk operation (optional) */ batchId?: string; } /** * */ export interface CreateBulkShortUrlsResponse { /** * Number of successfully created short URLs */ created?: number; /** * Number of failed creations */ failed?: number; /** * Unique identifier for this bulk operation */ batchId?: string; /** * Detailed results for each item */ results?: Array<BulkShortUrlResult>; } /** * */ export interface CreateOnetimeUrlIn { /** * The secret text/content to share */ text: string; /** * Optional password protection (leave empty for no password) */ passphrase?: string; /** * Domain to use for the URL */ domain?: string; /** * Custom suffix for the URL */ suffix?: string; /** * Lifetime in seconds (default: 7 days) */ lifetime?: number; /** * Maximum number of times the URL can be viewed (default: 1) */ maxViews?: number; } /** * */ export interface CreateOnetimeUrlOut { /** * The complete one-time URL */ onetimeUrl: string; /** * Domain used for the URL */ domain: string; /** * Short ID of the one-time URL */ sid: string; /** * ISO timestamp of creation */ createdAt: string; } /** * */ export interface CreateQrCodeIn { /** * Data to encode in QR code */ data?: string; /** * QR code type */ type?: string; /** * Mixed JSON object with all QR code settings */ settings?: object; } /** * */ export interface CreateQrCodeOut { /** * Database ID of the QR code */ _id?: string; /** * Short ID for the QR code */ sid?: string; /** * Encoded data in the QR code */ data?: string; /** * Type of QR code */ type?: string; /** * Base64 encoded QR code image */ qrCodeImage?: string; settings?: QrCodeGenerationSettings; /** * ISO timestamp when QR code expires */ expiresAt?: string; /** * ISO timestamp of creation */ createdAt?: string; } /** * */ export interface CreateQrCodeSettings { /** * Mixed JSON object with all QR code settings from frontend */ settings?: object; } /** * */ export interface CreateShortUrlIn { /** * URL to shorten */ url: string; /** * Domain to use for short URL */ domain?: string; /** * Custom suffix for the short URL */ suffix?: string; } /** * */ export interface CreateShortUrlOut { /** * The original URL */ url: string; /** * The complete shortened URL */ shortUrl: string; /** * Domain used for the short URL */ domain: string; /** * Short ID of the URL */ sid: string; /** * ISO timestamp of creation */ createdAt: string; } /** * */ export interface CurrencyDenominations { /** * Frequently used denominations */ frequent?: Array<string>; /** * Rarely used denominations */ rare?: Array<string>; } /** * */ export interface CurrencyISO { /** * ISO currency code */ code?: string; /** * ISO numeric code */ number?: string; } /** * */ export interface CurrencyMajorUnit { /** * Major unit name */ name?: string; /** * Major unit symbol */ symbol?: string; } /** * */ export interface CurrencyMinorUnit { /** * Minor unit name */ name?: string; /** * Minor unit symbol */ symbol?: string; /** * Value relative to major unit */ majorValue?: number; } /** * */ export interface CurrencyUnits { major?: CurrencyMajorUnit; minor?: CurrencyMinorUnit; } /** * */ export interface DeleteApiKeyIn { /** * Database ID of the API key to delete */ _id?: string; } /** * */ export interface DeleteApiKeyOut { /** * Whether the deletion was successful */ success?: boolean; } /** * */ export interface DeleteOnetimeUrlIn { /** * Short ID of the one-time URL */ sid: string; /** * Domain of the URL */ domain?: string; /** * Passphrase if set during creation */ passphrase?: string; } /** * */ export interface DeleteOnetimeUrlOut { /** * Whether deletion was successful */ success: boolean; } /** * */ export interface DeleteQrCodeIn { /** * Database ID of the QR code */ _id?: string; /** * Short ID of the QR code (alternative to _id) */ sid?: string; /** * Also delete related logs and short URLs (default: true) */ deleteRelated?: boolean; } /** * */ export interface DeleteQrCodeOut { /** * Whether deletion was successful */ success?: boolean; deletedCount?: DeletedCountInfo; } /** * */ export interface DeleteShortUrlIn { /** * Short ID of the URL */ sid: string; /** * Domain of the short URL */ domain?: string; } /** * */ export interface DeleteShortUrlOut { /** * Whether deletion was successful */ success: boolean; } /** * */ export interface DeletedCountInfo { /** * Number of QR codes deleted */ qrCode?: number; /** * Number of logs deleted */ logs?: number; } /** * */ export interface DetectedName { /** * First name detected from email */ firstName?: string; /** * Last name detected from email */ lastName?: string; /** * Confidence score for name detection (0-1) */ confidence?: number; } /** * */ export interface DomainAgeInfo { /** * Age of the domain in days */ ageInDays?: number; /** * Domain creation date */ createdDate?: string; /** * Whether the age information is valid */ isValid?: boolean; } /** * */ export interface DomainRegistrationInfo { /** * Domain creation date */ created?: string; /** * Domain last update date */ updated?: string; /** * Domain expiration date */ expires?: string; /** * Domain registrar name */ registrar?: string; /** * Registrant organization */ registrantOrganization?: string; /** * Registrant country */ registrantCountry?: string; /** * Domain status */ status?: string; } /** * */ export interface DomainSuggestion { /** * Original domain with typo */ original?: string; /** * Suggested corrected domain */ suggested?: string; /** * Confidence score for suggestion (0-1) */ confidence?: number; } /** * */ export interface DownloadApiUsageOut { /** * Download URL for the exported file */ url?: string; /** * Suggested filename for the download */ filename?: string; /** * MIME type of the file */ contentType?: string; } /** * error value */ export interface ErrorValue { } /** * */ export interface GetApiKeyDetailsIn { /** * Database ID of the API key */ _id?: string; } /** * */ export interface GetApiKeyDetailsOut { /** * Database document ID */ _id?: string; /** * Name/description of the API key */ name?: string; /** * The actual API key value */ apiKey?: string; /** * List of services this key can access */ services?: Array<string>; /** * Whether the API key is active */ isEnabled?: boolean; /** * User ID who owns this API key */ userId?: string; /** * Additional metadata */ meta?: object; /** * ISO timestamp of creation */ createdAt?: string; /** * ISO timestamp of last update */ updatedAt?: string; } /** * */ export interface GetApiUsageOut { /** * Array of daily usage records */ usage?: Array<ApiUsageItem>; /** * Total number of requests in the period */ totalRequests?: number; } /** * */ export interface GetCityDetailsOut { /** * City ID */ id?: number; /** * City name */ name?: string; /** * Country code */ countryCode?: string; /** * Country name */ countryName?: string; /** * State/Province code */ stateCode?: string; /** * State/Province name */ stateName?: string; /** * Latitude coordinate */ latitude?: number; /** * Longitude coordinate */ longitude?: number; } /** * */ export interface GetCountryDetailsOut { /** * Country code (ISO 3166-1 alpha-2) */ code?: string; /** * ISO 3166-1 alpha-2 code */ cca2?: string; /** * ISO 3166-1 alpha-3 code */ cca3?: string; /** * ISO 3166-1 numeric code */ ccn3?: string; /** * International Olympic Committee code */ cioc?: string; /** * FIFA code */ fifa?: string; name?: CountryName; /** * Capital city/cities */ capital?: Array<string>; capitalInfo?: CapitalInfo; /** * Alternative country name spellings */ altSpellings?: Array<string>; /** * Geographic region */ region?: string; /** * Geographic subregion */ subregion?: string; /** * Continents the country belongs to */ continents?: Array<string>; /** * Official languages (key-value pairs) */ languages?: object; /** * Currency information (key-value pairs) */ currencies?: object; /** * Flag emoji */ flag?: string; flags?: ImageLinks; coatOfArms?: ImageLinks; /** * Total area in km² */ area?: number; /** * Population count */ population?: number; /** * Latitude and longitude coordinates */ latlng?: Array<number>; /** * Whether the country is landlocked */ landlocked?: boolean; /** * Border country codes */ borders?: Array<string>; /** * Timezones */ timezones?: Array<string>; /** * Top-level domains */ tld?: Array<string>; /** * Independence status */ independent?: boolean; /** * UN membership status */ unMember?: boolean; /** * Country status */ status?: string; /** * First day of the week */ startOfWeek?: string; car?: CarInfo; idd?: IddInfo; postalCode?: PostalCodeInfo; /** * Demonym information by language */ demonyms?: object; /** * Gini coefficient by year */ gini?: object; maps?: MapsInfo; /** * Country name translations */ translations?: object; } /** * */ export interface GetCurrencyDetailsOut { /** * Currency code (ISO 4217) */ code?: string; /** * Currency name */ name?: string; /** * Native currency name */ nameNative?: string; /** * Plural form of currency name */ namePlural?: string; /** * Native plural form of currency name */ namePluralNative?: string; /** * Currency symbol code */ symbol?: string; /** * Native currency symbol (e.g., $, €) */ symbolNative?: string; /** * Number of decimal places */ decimalDigits?: number; /** * Rounding precision */ rounding?: number; /** * Flag code for primary country */ flagCode?: string; iso?: CurrencyISO; units?: CurrencyUnits; banknotes?: CurrencyDenominations; coins?: CurrencyDenominations; /** * Country codes using this currency */ countries?: Array<string>; } /** * */ export interface GetCurrencyExchangeRateOut { /** * Source currency code */ from?: string; /** * Target currency code */ to?: string; /** * Exchange rate from source to target currency */ exchangeRate?: number; /** * Timestamp of the exchange rate (ISO 8601 format) */ rateTime?: string; /** * Data provider used for this rate */ provider?: string; /** * Whether the rate was served from cache */ cached?: boolean; /** * Inverse exchange rate (to -> from) */ inverseRate?: number; /** * Rate disclaimer or terms of use */ disclaimer?: string; } /** * */ export interface GetDomainWhoisOut { /** * */ domain?: string; /** * */ whoisText?: string; /** * */ whoisJson?: object; } /** * */ export interface GetEmailDetailsOut { /** * The email address that was validated */ email?: string; /** * Whether MX records exist for the domain */ validMx?: boolean; /** * Whether SMTP connection was successful */ validSmtp?: boolean; /** * Whether email format is valid */ validFormat?: boolean; /** * Whether email is from a disposable domain */ isDisposable?: boolean; /** * Whether email is from a free email provider */ isFree?: boolean; detectedName?: DetectedName; domainSuggestion?: DomainSuggestion; domainAge?: DomainAgeInfo; domainRegistration?: DomainRegistrationInfo; /** * Overall email quality score (0-100) */ score?: number; /** * Performance metrics (only when getPerformanceData=true) */ performance?: object; } /** * City geolocation information */ export interface GetIpDetailsCityOut { /** * Accuracy radius in kilometers */ accuracyRadius: number; /** * Geographic latitude */ latitude: number; /** * Geographic longitude */ longitude: number; /** * IANA time zone */ timeZone?: string; /** * City name */ name?: string; /** * Region or state name */ region?: string; /** * Area code if available */ areaCode?: string; } /** * IP geolocation response */ export interface GetIpDetailsOut { /** * The IP address that was looked up */ ip: string; /** * PTR record (reverse DNS) if available */ ptr?: string; /** * ISO 3166-1 alpha-2 country code */ countryCode?: string; /** * ISO 3166-1 alpha-3 country code */ countryCode3?: string; /** * Full country name */ countryName?: string; /** * Continent code */ continentCode?: string; /** * Country code where IP is registered */ registeredCountryCode?: string; /** * Autonomous System Number */ asn?: number; /** * Autonomous System Organization name */ aso?: string; /** * Organization name */ organization?: string; city?: GetIpDetailsCityOut; /** * Performance metrics (only when getPerformanceData=1) */ performance?: object; } /** * */ export interface GetOnetimeUrlDetailsOut { /** * Whether a passphrase is required to access the content */ requirePassphrase?: boolean; /** * Complete one-time URL */ onetimeUrl?: string; /** * Short ID identifier for the one-time URL */ sid?: string; /** * Domain used for the one-time URL */ domain?: string; /** * The secret text content (only shown once) */ text?: string; /** * Number of times the URL has been viewed */ viewCount?: number; /** * Maximum number of views allowed */ maxViews?: number; /** * ISO timestamp when the URL expires */ expireAt?: string; /** * ISO timestamp of creation */ createdAt?: string; } /** * */ export interface GetPhoneDetailsOut { /** * Whether the phone number is valid */ valid?: boolean; /** * Normalized phone number with country code */ number?: string; /** * Phone number in local format */ localFormat?: string; /** * Phone number in international format */ internationalFormat?: string; /** * Country calling code */ countryPrefix?: string; /** * ISO country code */ countryCode?: string; /** * Country name */ countryName?: string; /** * Geographic location or region */ location?: string; /** * Phone carrier/operator name */ carrier?: string; /** * Array of all possible carriers when multiple matches exist */ matchedCarriers?: Array<string>; /** * Type of phone line (mobile, landline, voip) */ lineType?: string; } /** * */ export interface GetQrCodeAnalyticsOut { /** * Database ID of the QR code */ qrCodeId?: string; /** * Short ID of the QR code */ sid?: string; /** * QR code data */ data?: string; /** * QR code type */ type?: string; /** * Total number of scans */ totalScans?: number; /** * Number of unique scans */ uniqueScans?: number; /** * Last scan timestamp */ lastScannedAt?: string; /** * Breakdown by device type */ deviceTypes?: object; /** * Breakdown by country */ countries?: object; /** * Breakdown by browser */ browsers?: object; /** * Timeline of scans */ scanTimeline?: Array<object>; /** * Analytics period */ period?: object; } /** * */ export interface GetQrCodeDetailsOut { /** * Database ID of the QR code */ _id?: string; /** * Short ID for the QR code */ sid?: string; /** * Encoded data in the QR code */ data?: string; /** * Type of QR code */ type?: string; /** * Base64 QR code image or URL */ imageUrl?: string; settings?: QrCodeGenerationSettings; /** * Whether QR code is active */ isActive?: boolean; /** * Expiration timestamp */ expiresAt?: string; /** * ISO timestamp of creation */ createdAt?: string; /** * ISO timestamp of last update */ updatedAt?: string; } /** * */ export interface GetShortUrlAnalyticsOut { /** * Short URL details */ shortUrl: object; /** * Array of view/click records */ views: Array<object>; /** * Domain of the short URL */ domain: string; /** * Database ID */ _id?: string; /** * Short ID */ sid?: string; } /** * */ export interface GetShortUrlDetailsOut { /** * Database document ID */ _id?: string; /** * Original long URL */ url?: string; /** * Complete shortened URL */ shortUrl?: string; /** * Short ID identifier */ sid?: string; /** * Domain used for shortening */ domain?: string; /** * Number of times the short URL was accessed */ clicks?: number; meta?: ShortUrlMeta; /** * ISO timestamp of creation */ createdAt?: string; /** * ISO timestamp of last update */ updatedAt?: string; } /** * */ export interface HttpErrorOut { /** * http status code */ status?: number; /** * error name */ name?: string; /** * error message */ message?: string; /** * array of errors */ errors?: Array<Error>; } /** * */ export interface IApiKeyModelJSON { /** * */ _id?: string; /** * */ userId?: string; /** * */ apiKey?: string; /** * */ name?: string; /** * */ environment?: string; /** * */ services?: Array<string>; /** * */ isEnabled?: boolean; /** * */ note?: string; /** * */ meta?: object; /** * */ createdAt?: string; /** * */ updatedAt?: string; } /** * */ export interface IddInfo { /** * Root dialing code */ root?: string; /** * Dialing code suffixes */ suffixes?: Array<string>; } /** * */ export interface ImageLinks { /** * SVG image URL */ svg?: string; /** * PNG image URL */ png?: string; /** * Alternative text */ alt?: string; } /** * */ export interface ListApiKeysIn { /** * Optional Database ID to filter specific API key */ _id?: string; } /** * */ export interface ListApiKeysOut { /** * Array of API key objects */ list?: Array<GetApiKeyDetailsOut>; } /** * */ export interface ListCitiesOut { /** * Array of city objects */ list?: Array<GetCityDetailsOut>; /** * page number */ page?: number; /** * total number of cities */ total?: number; /** * page size */ size?: number; /** * total number of pages */ totalPages?: number; } /** * */ export interface ListCountriesOut { /** * Array of country objects (fields based on expand/exclude parameters) */ list?: Array<GetCountryDetailsOut>; /** * page number */ page?: number; /** * total number of countries */ total?: number; /** * page size */ size?: number; /** * total number of pages */ totalPages?: number; } /** * */ export interface ListCurrenciesOut { /** * Array of currency objects (fields based on expand/exclude parameters) */ list?: Array<GetCurrencyDetailsOut>; /** * Total number of currencies matching filters */ total?: number; /** * Current page number */ page?: number; /** * Number of items per page */ pageSize?: number; /** * Total number of pages */ totalPages?: number; } /** * */ export interface ListOnetimeUrlsOut { /** * Array of one-time URL objects */ list?: Array<GetOnetimeUrlDetailsOut>; /** * Current page number */ page?: number; /** * Number of items per page */ pageSize?: number; /** * Total number of URLs */ total?: number; /** * Total number of pages */ totalPages?: number; } /** * */ export interface ListQrCodesOut { /** * Array of QR codes */ list?: Array<QrCodeListItem>; pagination?: PaginationInfo; } /** * */ export interface ListShortUrlsOut { /** * Array of short URL objects */ list?: Array<GetShortUrlDetailsOut>; /** * Current page number */ page?: number; /** * Number of items per page */ pageSize?: number; /** * Total number of URLs */ total?: number; /** * Total number of pages */ totalPages?: number; } /** * */ export interface LookupDomainDnsOut { /** * */ address?: string; /** * */ type?: string; /** * */ records?: Array<object>; /** * */ success?: boolean; /** * */ error?: object; /** * Performance metrics (only when getPerformanceData=true) */ performance?: object; } /** * */ export interface MapsInfo { /** * Google Maps URL */ googleMaps?: string; /** * OpenStreetMap URL */ openStreetMaps?: string; } /** * */ export interface ModelError { value?: ErrorValue; /** * error message */ msg?: string; /** * error parameters */ param?: string; /** * location of the error */ location?: string; } /** * */ export interface PaginationInfo { /** * Current page number */ page?: number; /** * Items per page */ pageSize?: number; /** * Total number of items */ total?: number; /** * Total number of pages */ totalPages?: number; } /** * */ export interface PerformanceMetrics { /** * Total processing time in milliseconds */ totalTime?: number; /** * Time to fetch the URL in milliseconds */ fetchTime?: number; /** * Time to extract metadata in milliseconds */ metadataTime?: number; /** * Time to extract Open Graph data in milliseconds */ openGraphTime?: number; /** * Whether a retry was attempted due to bot detection */ retryAttempted?: boolean; /** * Time taken for retry attempt in milliseconds */ retryTime?: number; /** * User agent used for the request */ userAgent?: string; /** * Whether mobile fallback was used */ mobileUserAgentUsed?: boolean; } /** * */ export interface PostalCodeInfo { /** * Postal code format */ format?: string; /** * Postal code validation regex */ regex?: string; } /** * */ export interface PreviewQrCodeIn { /** * Data to encode in QR code */ data?: string; /** * QR code type */ type?: PreviewQrCodeInTypeEnum; /** * Output format (always returns base64) */ format?: PreviewQrCodeInFormatEnum; /** * Mixed JSON object with all QR code settings */ settings?: object; } export declare const PreviewQrCodeInTypeEnum: { readonly Url: "url"; readonly Text: "text"; readonly Email: "email"; readonly Phone: "phone"; readonly Sms: "sms"; readonly Wifi: "wifi"; readonly Vcard: "vcard"; }; export type PreviewQrCodeInTypeEnum = (typeof PreviewQrCodeInTypeEnum)[keyof typeof PreviewQrCodeInTypeEnum]; export declare const PreviewQrCodeInFormatEnum: { readonly Base64: "base64"; }; export type PreviewQrCodeInFormatEnum = (typeof PreviewQrCodeInFormatEnum)[keyof typeof PreviewQrCodeInFormatEnum]; /** * */ export interface PreviewQrCodeOut { /** * Output format */ format?: string; /** * Data encoded in QR code */ data?: string; /** * QR code type */ type?: string; /** * QR code content (base64, SVG, or PNG binary) */ qrCode?: string; /** * Settings used for generation */ settings?: object; /** * Legacy field for backward compatibility */ imgString?: string; } /** * */ export interface QrCodeAnalytics { /** * Total number of scans */ scans?: number; /** * Number of unique scans */ uniqueScans?: number; /** * Last scan timestamp */ lastScannedAt?: string; } /** * */ export interface QrCodeBase { /** * Database ID of the QR code */ _id?: string; /** * Short ID of the QR code */ sid?: string; /** * Encoded data in the QR code */ data?: string; /** * Type of QR code */ type?: QrCodeBaseTypeEnum; /** * Base64 QR code image or URL */ imageUrl?: string; analytics?: QrCodeAnalytics; settings?: QrCodeGenerationSettings; /** * Whether QR code is active */ isActive?: boolean; /** * Expiration timestamp */ expiresAt?: string; /** * ISO timestamp of creation */ createdAt?: string; /** * ISO timestamp of last update */ updatedAt?: string; } export declare const QrCodeBaseTypeEnum: { readonly Url: "url"; readonly Text: "text"; readonly Email: "email"; readonly Phone: "phone"; readonly Sms: "sms"; readonly Wifi: "wifi"; readonly Vcard: "vcard"; }; export type QrCodeBaseTypeEnum = (typeof QrCodeBaseTypeEnum)[keyof typeof QrCodeBaseTypeEnum]; /** * */ export interface QrCodeColorOptions { /** * Dark color (hex) */ dark?: string; /** * Light color (hex) */ light?: string; } /** * */ export interface QrCodeGenerationSettings { /** * Size of QR code in pixels (100-1000) */ size?: number; /** * Margin around QR code (0-10) */ margin?: number; /** * Error correction level */ errorCorrectionLevel?: QrCodeGenerationSettingsErrorCorrectionLevelEnum; color?: QrCodeColorOptions; /** * URL to logo image to embed */ logo?: string; } export declare const QrCodeGenerationSettingsErrorCorrectionLevelEnum: { readonly L: "L"; readonly M: "M"; readonly Q: "Q"; readonly H: "H"; }; export type QrCodeGenerationSettingsErrorCorrectionLevelEnum = (typeof QrCodeGenerationSettingsErrorCorrectionLevelEnum)[keyof typeof QrCodeGenerationSettingsErrorCorrectionLevelEnum]; /** * */ export interface QrCodeListItem { /** * Database ID of the QR code */ _id?: string; /** * Short ID of the QR code */ sid?: string; /** * Encoded data in the QR code */ data?: string; /** * Type of QR code */ type?: string; /** * Base64 QR code image or URL (truncated) */ imageUrl?: string; /** * Whether QR code is active */ isActive?: boolean; /** * Expiration timestamp */ expiresAt?: string; /** * ISO timestamp of creation */ createdAt?: string; /** * ISO timestamp of last update */ updatedAt?: string; } /** * */ export interface ScrapeUrlDataIn { /** * URL to scrape metadata from */ url?: string; /** * Data types to return, metadata,openGraph,html, Default [\"openGraph\"] */ dataTypes?: Array<string>; /** * Specific metadata fields to extract: author,description,image,logo,favicon,title,url,spotify,youtube,instagram,soundcloud,amazon,shopping,clearbit,manifest. Default: all fields */ metadataFields?: Array<string>; } /** * */ export interface ScrapeUrlDataOut { /** * The scraped URL */ url?: string; /** * */ metadata?: object; /** * */ openGraph?: object; /** * Raw HTML content (if requested) */ html?: string; /** * Data types that were requested */ dataTypes?: Array<string>; /** * Whether the data came from cache */ cached?: boolean; performance?: PerformanceMetrics; } /** * */ export interface ShortUrlMeta { /** * Whether the URL is disabled */ isDisabled?: boolean; /** * User ID who created the URL */ userId?: string; } /** * */ export interface TrackQrViewIn { /** * Referrer URL */ referrer?: string; /** * User agent string */ userAgent?: string; /** * Additional tracking metadata */ meta?: object; } /** * */ export interface TrackQrViewOut { /** * Whether tracking was successful */ success?: boolean; /** * Whether the view was tracked */ tracked?: boolean; /** * Response message */ message?: string; } /** * */ export interface UpdateApiKeyIn { /** * Database ID of the API key to update */ _id: string; /** * Updated name/description for the API key */ name?: string; /** * Environment designation (e.g., production, staging, development) */ environment?: string; /** * Updated list of services this key can access */ services?: Array<string>; /** * Whether to enable or disable the API key */ isEnabled?: boolean; } /** * */ export interface UpdateQrCodeIn { /** * Database ID of the QR code */ _id?: string; /** * Short ID of the QR code (alternative to _id) */ sid?: string; /** * New data to encode (regenerates QR code) */ data?: string; /** * New QR code type */ type?: UpdateQrCodeInTypeEnum; /** * Enable/disable QR code */ isActive?: boolean; /** * New expiration date (ISO 8601) */ expiresAt?: string; /** * Mixed JSON object with all QR code settings */ settings?: object; /** * Force regenerate QR code image */ regenerateImage?: boolean; } export declare const UpdateQrCodeInTypeEnum: { readonly Url: "url"; readonly Text: "text"; readonly Email: "email"; readonly Phone: "phone"; readonly Sms: "sms"; readonly Wifi: "wifi"; readonly Vcard: "vcard"; }; export type UpdateQrCodeInTypeEnum = (typeof UpdateQrCodeInTypeEnum)[keyof typeof UpdateQrCodeInTypeEnum]; /** * */ export interface UpdateQrCodeOut { /** * Database ID of the QR code */ _id?: string; /** * Short ID of the QR code */ sid?: string; /** * Encoded data */ data?: string; /** * QR code type */ type?: string; /** * Updated QR code image */ imageUrl?: string; /** * Active status */ isActive?: boolean; /** * Expiration date */ expiresAt?: string; settings?: QrCodeGenerationSettings; /** * Update timestamp */ updatedAt?: string; } /** * */ export interface UpdateQrCodeSettings { /** * Mixed JSON object with all QR code settings from frontend */ settings?: object; } /** * */ export interface UpdateShortUrlIn { /** * Database ID of the short URL */ _id: string; /** * Updated target URL */ url: string; /** * New short ID */ sid: string; /** * Domain for the short URL */ domain?: string; } /** * */ export interface UpdateShortUrlOut { /** * The updated target URL */ originalUrl: string; /** * Complete updated short URL */ shortUrl: string; /** * Domain of the short URL */ domain: string; /** * Updated short ID */ sid: string; } /** * */ export interface WhoAmIOut { /** * */ userId?: string; /** * */ email?: string; /** * */ username?: string; /** * */ reqIpAddress?: string; /** * */ reqIpCountry?: string; /** * */ reqUserAgent?: string; } /** * APIKeyApi - axios parameter creator */ export declare const APIKeyApiAxiosParamCreator: (configuration?: Configuration) => { /** * Create API Key - Generate a new API key * @param {CreateApiKeyIn} createApiKeyIn API key configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1CreateApiKey: (createApiKeyIn: CreateApiKeyIn, options?: RawAxiosRequestConfig) => Promise<RequestArgs>; /** * Delete API Key - Remove an API key permanently * @param {DeleteApiKeyIn} deleteApiKeyIn API key to delete * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1DeleteApiKey: (deleteApiKeyIn: DeleteApiKeyIn, options?: RawAxiosRequestConfig) => Promise<RequestArgs>; /** * Get API Key Details - Retrieve details of a specific API key * @param {GetApiKeyDetailsIn} getApiKeyDetailsIn Request body with API key ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1GetApiKeyDetails: (getApiKeyDetailsIn: GetApiKeyDetailsIn, options?: RawAxiosRequestConfig) => Promise<RequestArgs>; /** * Who Am I - Get current user information * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1GetWhoAmI: (options?: RawAxiosRequestConfig) => Promise<RequestArgs>; /** * List API Keys - Retrieve user\'s API keys * @param {ListApiKeysIn} listApiKeysIn Request body * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1ListApiKeys: (listApiKeysIn: ListApiKeysIn, options?: RawAxiosRequestConfig) => Promise<RequestArgs>; /** * Update API Key - Modify an existing API key * @param {UpdateApiKeyIn} updateApiKeyIn Updated API key configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1UpdateApiKey: (updateApiKeyIn: UpdateApiKeyIn, options?: RawAxiosRequestConfig) => Promise<RequestArgs>; }; /** * APIKeyApi - functional programming interface */ export declare const APIKeyApiFp: (configuration?: Configuration) => { /** * Create API Key - Generate a new API key * @param {CreateApiKeyIn} createApiKeyIn API key configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1CreateApiKey(createApiKeyIn: CreateApiKeyIn, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GetApiKeyDetailsOut>>; /** * Delete API Key - Remove an API key permanently * @param {DeleteApiKeyIn} deleteApiKeyIn API key to delete * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1DeleteApiKey(deleteApiKeyIn: DeleteApiKeyIn, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<DeleteApiKeyOut>>; /** * Get API Key Details - Retrieve details of a specific API key * @param {GetApiKeyDetailsIn} getApiKeyDetailsIn Request body with API key ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1GetApiKeyDetails(getApiKeyDetailsIn: GetApiKeyDetailsIn, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GetApiKeyDetailsOut>>; /** * Who Am I - Get current user information * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1GetWhoAmI(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<WhoAmIOut>>; /** * List API Keys - Retrieve user\'s API keys * @param {ListApiKeysIn} listApiKeysIn Request body * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1ListApiKeys(listApiKeysIn: ListApiKeysIn, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<ListApiKeysOut>>; /** * Update API Key - Modify an existing API key * @param {UpdateApiKeyIn} updateApiKeyIn Updated API key configuration * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1UpdateApiKey(updateApiKeyIn: UpdateApiKeyIn, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GetApiKeyDetailsOut>>; }; /** * APIKeyApi - factory interface */ export declare const APIKeyApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { /** * Create API Key - Generate a new API key * @param {APIKeyApiV1CreateApiKeyRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1CreateApiKey(requestParameters: APIKeyApiV1CreateApiKeyRequest, options?: RawAxiosRequestConfig): AxiosPromise<GetApiKeyDetailsOut>; /** * Delete API Key - Remove an API key permanently * @param {APIKeyApiV1DeleteApiKeyRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1DeleteApiKey(requestParameters: APIKeyApiV1DeleteApiKeyRequest, options?: RawAxiosRequestConfig): AxiosPromise<DeleteApiKeyOut>; /** * Get API Key Details - Retrieve details of a specific API key * @param {APIKeyApiV1GetApiKeyDetailsRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1GetApiKeyDetails(requestParameters: APIKeyApiV1GetApiKeyDetailsRequest, options?: RawAxiosRequestConfig): AxiosPromise<GetApiKeyDetailsOut>; /** * Who Am I - Get current user information * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1GetWhoAmI(options?: RawAxiosRequestConfig): AxiosPromise<WhoAmIOut>; /** * List API Keys - Retrieve user\'s API keys * @param {APIKeyApiV1ListApiKeysRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1ListApiKeys(requestParameters: APIKeyApiV1ListApiKeysRequest, options?: RawAxiosRequestConfig): AxiosPromise<ListApiKeysOut>; /** * Update API Key - Modify an existing API key * @param {APIKeyApiV1UpdateApiKeyRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1UpdateApiKey(requestParameters: APIKeyApiV1UpdateApiKeyRequest, options?: RawAxiosRequestConfig): AxiosPromise<GetApiKeyDetailsOut>; }; /** * Request parameters for v1CreateApiKey operation in APIKeyApi. */ export interface APIKeyApiV1CreateApiKeyRequest { /** * API key configuration */ readonly createApiKeyIn: CreateApiKeyIn; } /** * Request parameters for v1DeleteApiKey operation in APIKeyApi. */ export interface APIKeyApiV1DeleteApiKeyRequest { /** * API key to delete */ readonly deleteApiKeyIn: DeleteApiKeyIn; } /** * Request parameters for v1GetApiKeyDetails operation in APIKeyApi. */ export interface APIKeyApiV1GetApiKeyDetailsRequest { /** * Request body with API key ID */ readonly getApiKeyDetailsIn: GetApiKeyDetailsIn; } /** * Request parameters for v1ListApiKeys operation in APIKeyApi. */ export interface APIKeyApiV1ListApiKeysRequest { /** * Request body */ readonly listApiKeysIn: ListApiKeysIn; } /** * Request parameters for v1UpdateApiKey operation in APIKeyApi. */ export interface APIKeyApiV1UpdateApiKeyRequest { /** * Updated API key configuration */ readonly updateApiKeyIn: UpdateApiKeyIn; } /** * APIKeyApi - object-oriented interface */ export declare class APIKeyApi extends BaseAPI { /** * Create API Key - Generate a new API key * @param {APIKeyApiV1CreateApiKeyRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1CreateApiKey(requestParameters: APIKeyApiV1CreateApiKeyRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<GetApiKeyDetailsOut, any>>; /** * Delete API Key - Remove an API key permanently * @param {APIKeyApiV1DeleteApiKeyRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1DeleteApiKey(requestParameters: APIKeyApiV1DeleteApiKeyRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<DeleteApiKeyOut, any>>; /** * Get API Key Details - Retrieve details of a specific API key * @param {APIKeyApiV1GetApiKeyDetailsRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1GetApiKeyDetails(requestParameters: APIKeyApiV1GetApiKeyDetailsRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<GetApiKeyDetailsOut, any>>; /** * Who Am I - Get current user information * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1GetWhoAmI(options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<WhoAmIOut, any>>; /** * List API Keys - Retrieve user\'s API keys * @param {APIKeyApiV1ListApiKeysRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1ListApiKeys(requestParameters: APIKeyApiV1ListApiKeysRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<ListApiKeysOut, any>>; /** * Update API Key - Modify an existing API key * @param {APIKeyApiV1UpdateApiKeyRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ v1UpdateApiKey(requestParameters: APIKeyApiV1UpdateApiKeyRequest, options?: RawAxiosRequestConfig): Promise<import("axios").AxiosResponse<GetApiKeyDetailsOut, any>>; } /** * APIUsag