UNPKG

datocms-plugin-sdk

Version:
1,339 lines 207 kB
/** This file was automatically generated by hyperschema-to-ts: DO NOT MODIFY IT BY HAND. */ /** * JSON API type field * * This interface was referenced by `Role`'s JSON-Schema via the `definition` "type". */ export declare type RoleType = 'role'; /** * ID of role * * This interface was referenced by `Role`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `Role`'s JSON-Schema via the `definition` "id". */ export declare type RoleIdentity = string; /** * ID of item type * * This interface was referenced by `ModelBlock`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `ModelBlock`'s JSON-Schema via the `definition` "id". */ export declare type ItemTypeIdentity = string; /** * ID of workflow * * This interface was referenced by `Workflow`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `Workflow`'s JSON-Schema via the `definition` "id". */ export declare type WorkflowIdentity = string; /** * ID of environment. Can only contain lowercase letters, numbers and dashes * * This interface was referenced by `Environment`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `Environment`'s JSON-Schema via the `definition` "id". */ export declare type EnvironmentIdentity = string; /** * ID of build_trigger * * This interface was referenced by `BuildTrigger`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `BuildTrigger`'s JSON-Schema via the `definition` "id". */ export declare type BuildTriggerIdentity = string; /** * JSON API type field * * This interface was referenced by `User`'s JSON-Schema via the `definition` "type". */ export declare type UserType = 'user'; /** * ID of collaborator * * This interface was referenced by `User`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `User`'s JSON-Schema via the `definition` "id". */ export declare type UserIdentity = string; /** * JSON API type field * * This interface was referenced by `SsoUser`'s JSON-Schema via the `definition` "type". */ export declare type SsoUserType = 'sso_user'; /** * ID of user * * This interface was referenced by `SsoUser`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `SsoUser`'s JSON-Schema via the `definition` "id". */ export declare type SsoUserIdentity = string; /** * JSON API type field * * This interface was referenced by `SsoGroup`'s JSON-Schema via the `definition` "type". */ export declare type SsoGroupType = 'sso_group'; /** * ID of group * * This interface was referenced by `SsoGroup`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `SsoGroup`'s JSON-Schema via the `definition` "id". */ export declare type SsoGroupIdentity = string; /** * JSON API type field * * This interface was referenced by `AuditLogEvent`'s JSON-Schema via the `definition` "type". */ export declare type AuditLogEventType = 'audit_log_event'; /** * ULID of event (https://github.com/ulid/spec) * * This interface was referenced by `AuditLogEvent`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `AuditLogEvent`'s JSON-Schema via the `definition` "id". */ export declare type AuditLogEventIdentity = string; /** * JSON API type field * * This interface was referenced by `Account`'s JSON-Schema via the `definition` "type". */ export declare type AccountType = 'account'; /** * ID of account * * This interface was referenced by `Account`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `Account`'s JSON-Schema via the `definition` "id". */ export declare type AccountIdentity = string; /** * JSON API type field * * This interface was referenced by `SitePlan`'s JSON-Schema via the `definition` "type". */ export declare type SitePlanType = 'site_plan'; /** * ID of plan * * This interface was referenced by `SitePlan`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `SitePlan`'s JSON-Schema via the `definition` "id". */ export declare type SitePlanIdentity = string; /** * JSON API type field * * This interface was referenced by `MenuItem`'s JSON-Schema via the `definition` "type". */ export declare type MenuItemType = 'menu_item'; /** * ID of menu item * * This interface was referenced by `MenuItem`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `MenuItem`'s JSON-Schema via the `definition` "id". */ export declare type MenuItemIdentity = string; /** * JSON API type field * * This interface was referenced by `ModelBlock`'s JSON-Schema via the `definition` "type". */ export declare type ItemTypeType = 'item_type'; /** This interface was referenced by `MenuItem`'s JSON-Schema via the `instances.hrefSchema` link. */ export declare type MenuItemInstancesHrefSchema = { filter?: { /** IDs to fetch, comma separated */ ids: string; }; }; /** * JSON API type field * * This interface was referenced by `Item`'s JSON-Schema via the `definition` "type". */ export declare type ItemType = 'item'; /** * ID of record * * This interface was referenced by `Item`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `Item`'s JSON-Schema via the `definition` "id". */ export declare type ItemIdentity = string; /** * JSON API type field * * This interface was referenced by `Field`'s JSON-Schema via the `definition` "type". */ export declare type FieldType = 'field'; /** * ID of field * * This interface was referenced by `Field`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `Field`'s JSON-Schema via the `definition` "id". */ export declare type FieldIdentity = string; /** * JSON API type field * * This interface was referenced by `Workflow`'s JSON-Schema via the `definition` "type". */ export declare type WorkflowType = 'workflow'; /** * JSON API type field * * This interface was referenced by `Job`'s JSON-Schema via the `definition` "type". */ export declare type TargetSchemaPropertiesDataType = 'job'; /** * ID of job * * This interface was referenced by `Job`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `Job`'s JSON-Schema via the `definition` "id". */ export declare type TargetSchemaPropertiesDataIdentity = string; /** * JSON API type fieldset * * This interface was referenced by `Fieldset`'s JSON-Schema via the `definition` "type". */ export declare type FieldsetType = 'fieldset'; /** * ID of fieldset * * This interface was referenced by `Fieldset`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `Fieldset`'s JSON-Schema via the `definition` "id". */ export declare type FieldsetIdentity = string; /** * JSON API type field * * This interface was referenced by `Session`'s JSON-Schema via the `definition` "type". */ export declare type SessionType = 'session'; /** * JSON web token for the session * * This interface was referenced by `Session`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `Session`'s JSON-Schema via the `definition` "id". */ export declare type SessionIdentity = string; /** * JSON API type field * * This interface was referenced by `AccessToken`'s JSON-Schema via the `definition` "type". */ export declare type AccessTokenType = 'access_token'; /** * ID of access_token * * This interface was referenced by `AccessToken`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `AccessToken`'s JSON-Schema via the `definition` "id". */ export declare type AccessTokenIdentity = string; /** * JSON API type field * * This interface was referenced by `Plugin`'s JSON-Schema via the `definition` "type". */ export declare type PluginType = 'plugin'; /** * ID of plugin * * This interface was referenced by `Plugin`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `Plugin`'s JSON-Schema via the `definition` "id". */ export declare type PluginIdentity = string; /** * JSON API type field * * This interface was referenced by `JobResult`'s JSON-Schema via the `definition` "type". */ export declare type JobResultType = 'job_result'; /** * ID of job result * * This interface was referenced by `JobResult`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `JobResult`'s JSON-Schema via the `definition` "id". */ export declare type JobResultIdentity = string; /** * JSON API type field * * This interface was referenced by `SubscriptionLimit`'s JSON-Schema via the `definition` "type". */ export declare type SubscriptionLimitType = 'subscription_limit'; /** * ID of limit * * This interface was referenced by `SubscriptionLimit`'s JSON-Schema via the * `definition` "identity". * * This interface was referenced by `SubscriptionLimit`'s JSON-Schema via the `definition` "id". */ export declare type SubscriptionLimitIdentity = string; /** * JSON API type field * * This interface was referenced by `SubscriptionFeature`'s JSON-Schema via the * `definition` "type". */ export declare type SubscriptionFeatureType = 'subscription_feature'; /** * ID of feature * * This interface was referenced by `SubscriptionFeature`'s JSON-Schema via the * `definition` "identity". * * This interface was referenced by `SubscriptionFeature`'s JSON-Schema via the `definition` "id". */ export declare type SubscriptionFeatureIdentity = string; /** * JSON API type field * * This interface was referenced by `BuildEvent`'s JSON-Schema via the `definition` "type". */ export declare type BuildEventType = 'build_event'; /** * ID of menu item * * This interface was referenced by `BuildEvent`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `BuildEvent`'s JSON-Schema via the `definition` "id". */ export declare type BuildEventIdentity = string; /** * JSON API type field * * This interface was referenced by `BuildTrigger`'s JSON-Schema via the `definition` "type". */ export declare type BuildTriggerType = 'build_trigger'; /** This interface was referenced by `Item`'s JSON-Schema via the `instances.hrefSchema` link. */ export declare type ItemInstancesHrefSchema = { /** * For Modular Content fields and Structured Text fields. If set, returns full payload * for nested blocks instead of IDs */ nested?: string; /** Attributes to filter records */ filter?: { /** * Record (or block record) IDs to fetch, comma separated. If you use this filter, * you *must not* use `filter[type]` or `filter[fields]` */ ids?: string; /** * Model ID or `api_key` to filter. If you use this filter, you *must not* use * `filter[ids]`. Comma separated values are accepted, but you *must not* use * `filter[fields]` in this case */ type?: string; /** * Textual query to match. You *must not* use `filter[ids]`. If `locale` is defined, * search within that locale. Otherwise environment's main locale will be used. */ query?: string; /** * Same as [GraphQL API records * filters](/docs/content-delivery-api/filtering-records). Use snake_case for fields * names. If `locale` is defined, search within that locale. Otherwise environment's * main locale will be used. */ fields?: { [k: string]: unknown; }; [k: string]: unknown; }; /** * When `filter[query]` or `field[fields]` is defined, filter by this locale. Default: * environment's main locale */ locale?: string; /** Attributes to manage results pagination */ page?: { /** Index of first record to fetch. Default: 0 */ offset?: number; /** Number of records to fetch. Maximum is 500 per page, default is 30. */ limit?: number; [k: string]: unknown; }; /** * Fields used to order results. You *must* specify also `filter[type]` with one * element only to be able use this option. Format: * `<field_name>_<DIRECTION(ASC|DESC)>`. You can pass multiple comma separated rules */ order_by?: string; /** * Whether you want the currently published versions (`published`, default) of your * records, or the latest available (`current`) */ version?: string; [k: string]: unknown; }; /** This interface was referenced by `Item`'s JSON-Schema via the `references.hrefSchema` link. */ export declare type ItemReferencesHrefSchema = { /** * For Modular Content fields and Structured Text fields, return full payload for * nested blocks instead of IDs */ nested?: 'true'; /** * Retrieve only the selected type of version that is linked to the record; current, * published or both */ version?: null | ('current' | 'published' | 'published-or-current'); [k: string]: unknown; }; /** This interface was referenced by `Item`'s JSON-Schema via the `self.hrefSchema` link. */ export declare type ItemSelfHrefSchema = { /** * For Modular Content fields and Structured Text fields. If set, returns full payload * for nested blocks instead of IDs */ nested?: string; /** * Whether you want the currently published versions (`published`, default) of your * records, or the latest available (`current`) */ version?: string; [k: string]: unknown; }; /** This interface was referenced by `Item`'s JSON-Schema via the `batch_destroy.hrefSchema` link. */ export declare type ItemBatchDestroyHrefSchema = { /** IDs of records to delete, comma separated */ 'filter[ids]': string; }; /** This interface was referenced by `Item`'s JSON-Schema via the `batch_publish.hrefSchema` link. */ export declare type ItemBatchPublishHrefSchema = { /** IDs of records to publish, comma separated */ 'filter[ids]': string; }; /** This interface was referenced by `Item`'s JSON-Schema via the `batch_unpublish.hrefSchema` link. */ export declare type ItemBatchUnpublishHrefSchema = { /** IDs of records to unpublish, comma separated */ 'filter[ids]': string; }; /** This interface was referenced by `Item`'s JSON-Schema via the `publish.hrefSchema` link. */ export declare type ItemPublishHrefSchema = { /** If the record references other draft records, force a recursive publication */ recursive?: string; [k: string]: unknown; }; /** This interface was referenced by `Item`'s JSON-Schema via the `unpublish.hrefSchema` link. */ export declare type ItemUnpublishHrefSchema = { /** If the record is referenced by other published records, unpublish them recursively */ recursive?: string; [k: string]: unknown; }; /** * JSON API type field * * This interface was referenced by `ItemVersion`'s JSON-Schema via the `definition` "type". */ export declare type ItemVersionType = 'item_version'; /** * ID of record version * * This interface was referenced by `ItemVersion`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `ItemVersion`'s JSON-Schema via the `definition` "id". */ export declare type ItemVersionIdentity = string; /** * JSON API type upload * * This interface was referenced by `Upload`'s JSON-Schema via the `definition` "type". */ export declare type UploadType = 'upload'; /** * ID of upload * * This interface was referenced by `Upload`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `Upload`'s JSON-Schema via the `definition` "id". */ export declare type UploadIdentity = string; /** This interface was referenced by `Upload`'s JSON-Schema via the `instances.hrefSchema` link. */ export declare type UploadInstancesHrefSchema = { /** Attributes to filter uploads */ filter?: { /** IDs to fetch, comma separated */ ids?: string; /** * Textual query to match. If `locale` is defined, search within that locale. * Otherwise environment's main locale will be used. */ query?: string; /** * Same as [GraphQL API uploads * filters](/docs/content-delivery-api/filtering-uploads). Use snake_case for fields * names. If `locale` is defined, search within that locale. Otherwise environment's * main locale will be used. */ fields?: { [k: string]: unknown; }; [k: string]: unknown; }; /** * When `filter[query]` or `field[fields]` is defined, filter by this locale. Default: * environment's main locale */ locale?: string; /** * Fields used to order results. Format: `<field_name>_<DIRECTION(ASC|DESC)>`. You can * pass multiple comma separated rules. */ order_by?: string; /** Attributes to manage results pagination */ page?: { /** Index of first upload to fetch. Default: 0 */ offset?: number; /** Number of uplads to fetch. Maximum is 500 per page, default is 30. */ limit?: number; [k: string]: unknown; }; [k: string]: unknown; }; /** * This interface was referenced by `Upload`'s JSON-Schema via the * `batch_add_tags.hrefSchema` link. */ export declare type UploadBatchAddTagsHrefSchema = { /** IDs to tag, comma separated */ 'filter[ids]'?: string; [k: string]: unknown; }; /** This interface was referenced by `Upload`'s JSON-Schema via the `batch_destroy.hrefSchema` link. */ export declare type UploadBatchDestroyHrefSchema = { /** IDs to destroy, comma separated */ 'filter[ids]'?: string; [k: string]: unknown; }; /** This interface was referenced by `Upload`'s JSON-Schema via the `references.hrefSchema` link. */ export declare type UploadReferencesHrefSchema = { /** * For Modular Content fields and Structured Text fields, return full payload for * nested blocks instead of IDs */ nested?: string; /** * Retrieve only the selected type of version that is linked to the upload; current, * published or both */ version?: null | ('current' | 'published' | 'published-or-current'); [k: string]: unknown; }; /** * JSON API type field * * This interface was referenced by `UploadRequest`'s JSON-Schema via the `definition` "type". */ export declare type UploadRequestType = 'upload_request'; /** * The S3 path where the file will be stored * * This interface was referenced by `UploadRequest`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `UploadRequest`'s JSON-Schema via the `definition` "id". */ export declare type UploadRequestIdentity = string; /** * JSON API type field * * This interface was referenced by `ScheduledPublication`'s JSON-Schema via the * `definition` "type". */ export declare type ScheduledPublicationType = 'scheduled_publication'; /** * ID of scheduled_publication * * This interface was referenced by `ScheduledPublication`'s JSON-Schema via the * `definition` "identity". * * This interface was referenced by `ScheduledPublication`'s JSON-Schema via the `definition` "id". */ export declare type ScheduledPublicationIdentity = string; /** * JSON API type field * * This interface was referenced by `ScheduledUnpublishing`'s JSON-Schema via the * `definition` "type". */ export declare type ScheduledUnpublishingType = 'scheduled_unpublishing'; /** * ID of scheduled_unpublishing * * This interface was referenced by `ScheduledUnpublishing`'s JSON-Schema via the * `definition` "identity". * * This interface was referenced by `ScheduledUnpublishing`'s JSON-Schema via the * `definition` "id". */ export declare type ScheduledUnpublishingIdentity = string; /** * JSON API type field * * This interface was referenced by `SearchResult`'s JSON-Schema via the `definition` "type". */ export declare type SearchResultType = 'search_result'; /** * ID of result * * This interface was referenced by `SearchResult`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `SearchResult`'s JSON-Schema via the `definition` "id". */ export declare type SearchResultIdentity = string; /** * This interface was referenced by `SearchResult`'s JSON-Schema via the * `instances.hrefSchema` link. */ export declare type SearchResultInstancesHrefSchema = { /** The query string to search */ q: string; /** The build trigger ID on which the search will be performed */ build_trigger_id?: string; /** Restrict the search on one locale */ locale?: string; /** Maximum number of results to return (Max: 100, default: 20) */ limit?: string; /** Number of records to offset for the search */ offset?: string; [k: string]: unknown; }; /** * JSON API type field * * This interface was referenced by `Environment`'s JSON-Schema via the `definition` "type". */ export declare type EnvironmentType = 'environment'; /** * JSON API type field * * This interface was referenced by `MaintenanceMode`'s JSON-Schema via the `definition` "type". */ export declare type MaintenanceModeType = 'maintenance_mode'; /** * ID of maintenance_mode * * This interface was referenced by `MaintenanceMode`'s JSON-Schema via the `definition` * "identity". * * This interface was referenced by `MaintenanceMode`'s JSON-Schema via the `definition` "id". */ export declare type MaintenanceModeIdentity = string; /** * This interface was referenced by `MaintenanceMode`'s JSON-Schema via the * `activate.hrefSchema` link. */ export declare type MaintenanceModeActivateHrefSchema = { /** Force the activation, even if there are collaborators editing some records. */ force?: boolean; [k: string]: unknown; }; /** * JSON API type field * * This interface was referenced by `Webhook`'s JSON-Schema via the `definition` "type". */ export declare type WebhookType = 'webhook'; /** * ID of webhook * * This interface was referenced by `Webhook`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `Webhook`'s JSON-Schema via the `definition` "id". */ export declare type WebhookIdentity = string; /** * JSON API type field * * This interface was referenced by `WebhookCall`'s JSON-Schema via the `definition` "type". */ export declare type WebhookCallType = 'webhook_call'; /** * ID of webhook call * * This interface was referenced by `WebhookCall`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `WebhookCall`'s JSON-Schema via the `definition` "id". */ export declare type WebhookCallIdentity = string; /** * JSON API type field * * This interface was referenced by `ItemTypeFilter`'s JSON-Schema via the `definition` "type". */ export declare type ItemTypeFilterType = 'item_type_filter'; /** * ID of filter * * This interface was referenced by `ItemTypeFilter`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `ItemTypeFilter`'s JSON-Schema via the `definition` "id". */ export declare type ItemTypeFilterIdentity = string; /** * JSON API type field * * This interface was referenced by `UploadFilter`'s JSON-Schema via the `definition` "type". */ export declare type UploadFilterType = 'upload_filter'; /** * ID of filter * * This interface was referenced by `UploadFilter`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `UploadFilter`'s JSON-Schema via the `definition` "id". */ export declare type UploadFilterIdentity = string; /** * JSON API type field * * This interface was referenced by `SiteInvitation`'s JSON-Schema via the `definition` "type". */ export declare type SiteInvitationType = 'site_invitation'; /** * ID of invitation * * This interface was referenced by `SiteInvitation`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `SiteInvitation`'s JSON-Schema via the `definition` "id". */ export declare type SiteInvitationIdentity = string; /** * JSON API type field * * This interface was referenced by `EditingSession`'s JSON-Schema via the `definition` "type". */ export declare type EditingSessionType = 'editing_session'; /** * UUID of presence * * This interface was referenced by `EditingSession`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `EditingSession`'s JSON-Schema via the `definition` "id". */ export declare type EditingSessionIdentity = string; /** * JSON API type field * * This interface was referenced by `SsoSettings`'s JSON-Schema via the `definition` "type". */ export declare type SsoSettingsType = 'sso_settings'; /** * ID * * This interface was referenced by `SsoSettings`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `SsoSettings`'s JSON-Schema via the `definition` "id". */ export declare type SsoSettingsIdentity = string; /** * JSON API type field * * This interface was referenced by `WhiteLabelSettings`'s JSON-Schema via the `definition` "type". */ export declare type WhiteLabelSettingsType = 'white_label_settings'; /** * ID * * This interface was referenced by `WhiteLabelSettings`'s JSON-Schema via the * `definition` "identity". * * This interface was referenced by `WhiteLabelSettings`'s JSON-Schema via the `definition` "id". */ export declare type WhiteLabelSettingsIdentity = string; /** * JSON API type field * * This interface was referenced by `PublicInfo`'s JSON-Schema via the `definition` "type". */ export declare type PublicInfoType = 'public_info'; /** * ID of site * * This interface was referenced by `PublicInfo`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `PublicInfo`'s JSON-Schema via the `definition` "id". */ export declare type PublicInfoIdentity = string; /** * JSON API type field * * This interface was referenced by `DailyUsage`'s JSON-Schema via the `definition` "type". */ export declare type DailyUsageType = 'daily_usage'; /** * ID of site * * This interface was referenced by `DailyUsage`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `DailyUsage`'s JSON-Schema via the `definition` "id". */ export declare type DailyUsageIdentity = string; /** * JSON API type field * * This interface was referenced by `UsageCounter`'s JSON-Schema via the `definition` "type". */ export declare type UsageCounterType = 'usage_counter'; /** * Name of the counter * * This interface was referenced by `UsageCounter`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `UsageCounter`'s JSON-Schema via the `definition` "id". */ export declare type UsageCounterIdentity = 'assets_path_bytes' | 'assets_referrer_bytes' | 'assets_ip_bytes' | 'cda_access_token_id_bytes' | 'cda_access_token_id_requests' | 'cda_referrer_bytes' | 'cda_referrer_requests' | 'cda_ip_bytes' | 'cda_ip_requests' | 'cma_endpoint_bytes' | 'cma_endpoint_requests' | 'cma_user_bytes' | 'cma_user_requests' | 'cma_ip_bytes' | 'cma_ip_requests' | 'video_path_seconds'; /** This interface was referenced by `UsageCounter`'s JSON-Schema via the `self.hrefSchema` link. */ export declare type UsageCounterSelfHrefSchema = { /** The time period upon which counters will be returned */ period?: 'today' | 'current_month' | 'last_month'; }; /** * JSON API type field * * This interface was referenced by `UploadTag`'s JSON-Schema via the `definition` "type". */ export declare type UploadTagType = 'upload_tag'; /** * ID of upload tag * * This interface was referenced by `UploadTag`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `UploadTag`'s JSON-Schema via the `definition` "id". */ export declare type UploadTagIdentity = string; /** * JSON API type field * * This interface was referenced by `UploadSmartTag`'s JSON-Schema via the `definition` "type". */ export declare type UploadSmartTagType = 'upload_smart_tag'; /** * ID of upload tag * * This interface was referenced by `UploadSmartTag`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `UploadSmartTag`'s JSON-Schema via the `definition` "id". */ export declare type UploadSmartTagIdentity = string; /** * JSON API type field * * This interface was referenced by `Site`'s JSON-Schema via the `definition` "type". */ export declare type SiteType = 'site'; /** * ID of site * * This interface was referenced by `Site`'s JSON-Schema via the `definition` "identity". * * This interface was referenced by `Site`'s JSON-Schema via the `definition` "id". */ export declare type SiteIdentity = string; export interface DatoCMSSiteAPI { role?: Role; user?: User; sso_user?: SsoUser; audit_log_event?: AuditLogEvent; account?: Account; site_plan?: SitePlan; menu_item?: MenuItem; item_type?: ModelBlock; field?: Field; fieldset?: Fieldset; job?: Job; session?: Session; access_token?: AccessToken; plugin?: Plugin; job_result?: JobResult; subscription_limit?: SubscriptionLimit; subscription_feature?: SubscriptionFeature; build_event?: BuildEvent; item?: Item; item_version?: ItemVersion; upload?: Upload; upload_request?: UploadRequest; scheduled_publication?: ScheduledPublication; scheduled_unpublishing?: ScheduledUnpublishing; search_result?: SearchResult; environment?: Environment; maintenance_mode?: MaintenanceMode; webhook?: Webhook; webhook_call?: WebhookCall; build_trigger?: BuildTrigger; item_type_filter?: ItemTypeFilter; upload_filter?: UploadFilter; site_invitation?: SiteInvitation; editing_session?: EditingSession; sso_group?: SsoGroup; sso_settings?: SsoSettings; white_label_settings?: WhiteLabelSettings; public_info?: PublicInfo; daily_usage?: DailyUsage; usage_counter?: UsageCounter; upload_tag?: UploadTag; upload_smart_tag?: UploadSmartTag; site?: Site; workflow?: Workflow; [k: string]: unknown; } /** * A Role represents a specific set of actions an editor (or an API token) can perform on * your administrative area. * * This interface was referenced by `DatoCMSSiteAPI`'s JSON-Schema via the `definition` "role". */ export interface Role { type: RoleType; id: RoleIdentity; attributes: RoleAttributes; relationships: RoleRelationships; meta: RoleMeta; } /** * JSON API attributes * * This interface was referenced by `Role`'s JSON-Schema via the `definition` "attributes". */ export interface RoleAttributes { /** The name of the role */ name: string; /** Can edit favicon, global SEO settings and no-index policy */ can_edit_favicon: boolean; /** Can change project name and 2FA settings */ can_edit_site: boolean; /** Can create/edit models and plugins */ can_edit_schema: boolean; /** Can customize content navigation bar */ can_manage_menu: boolean; /** Can change locales, timezone and UI theme */ can_edit_environment: boolean; /** Can promote environments to primary and manage maintenance mode */ can_promote_environments: boolean; /** Specifies the environments the user can access */ environments_access: 'all' | 'primary_only' | 'sandbox_only'; /** Can create/edit roles and invite/remove collaborators */ can_manage_users: boolean; /** Can create/edit shared filters (both for models and the media area) */ can_manage_shared_filters?: boolean; /** Can create/edit Build triggers */ can_manage_build_triggers: boolean; /** Can create/edit webhooks */ can_manage_webhooks: boolean; /** Can create/delete sandbox environments and promote them to primary environment */ can_manage_environments: boolean; /** Can manage Single Sign-On settings */ can_manage_sso: boolean; /** Can access Audit Log */ can_access_audit_log: boolean; /** Can create/edit workflows */ can_manage_workflows: boolean; /** Can manage API tokens */ can_manage_access_tokens: boolean; /** Can perform Site Search API calls */ can_perform_site_search: boolean; /** Can access the build events log */ can_access_build_events_log: boolean; /** Allowed actions on a model (or all) for a role */ positive_item_type_permissions: { item_type?: ItemTypeIdentity | null; workflow?: WorkflowIdentity | null; on_stage?: null | string; to_stage?: null | string; environment: EnvironmentIdentity; /** Permitted action */ action: 'all' | 'read' | 'update' | 'create' | 'duplicate' | 'delete' | 'publish' | 'edit_creator' | 'take_over' | 'move_to_stage'; /** Permitted creator */ on_creator?: 'anyone' | 'self' | 'role' | null; /** Permitted content scope */ localization_scope?: 'all' | 'localized' | 'not_localized' | null; /** * Permitted localized content in this locale. Required when `localization_scope` is * `localized` */ locale?: string | null; }[]; /** Prohibited actions on a model (or all) for a role */ negative_item_type_permissions: { item_type?: ItemTypeIdentity | null; workflow?: WorkflowIdentity | null; on_stage?: null | string; to_stage?: null | string; environment: EnvironmentIdentity; /** Permitted action */ action: 'all' | 'read' | 'update' | 'create' | 'duplicate' | 'delete' | 'publish' | 'edit_creator' | 'take_over' | 'move_to_stage'; /** Permitted creator */ on_creator?: 'anyone' | 'self' | 'role' | null; /** Permitted content scope */ localization_scope?: 'all' | 'localized' | 'not_localized' | null; /** * Permitted localized content in this locale. Required when `localization_scope` is * `localized` */ locale?: string | null; }[]; /** Allowed actions on a model (or all) for a role */ positive_upload_permissions: { environment: EnvironmentIdentity; /** Permitted action */ action: 'all' | 'read' | 'update' | 'create' | 'delete' | 'edit_creator' | 'replace_asset'; /** Permitted creator */ on_creator?: 'anyone' | 'self' | 'role' | null; /** Permitted content scope */ localization_scope?: 'all' | 'localized' | 'not_localized' | null; /** * Permitted localized content in this locale. Required when `localization_scope` is * `localized` */ locale?: string | null; }[]; /** Prohibited actions on a model (or all) for a role */ negative_upload_permissions: { environment: EnvironmentIdentity; /** Permitted action */ action: 'all' | 'read' | 'update' | 'create' | 'delete' | 'edit_creator' | 'replace_asset'; /** Permitted creator */ on_creator?: 'anyone' | 'self' | 'role' | null; /** Permitted content scope */ localization_scope?: 'all' | 'localized' | 'not_localized' | null; /** * Permitted localized content in this locale. Required when `localization_scope` is * `localized` */ locale?: string | null; }[]; /** Allowed build triggers for a role */ positive_build_trigger_permissions: { build_trigger?: BuildTriggerIdentity | null; }[]; /** Prohibited build triggers for a role */ negative_build_trigger_permissions: { build_trigger?: BuildTriggerIdentity | null; }[]; } /** * JSON API links * * This interface was referenced by `Role`'s JSON-Schema via the `definition` "relationships". */ export interface RoleRelationships { /** The roles from which this role inherits permissions */ inherits_permissions_from: { data: RoleData[]; }; } /** * JSON API data * * This interface was referenced by `Role`'s JSON-Schema via the `definition` "data". */ export interface RoleData { type: RoleType; id: RoleIdentity; } /** * Meta information regarding the record * * This interface was referenced by `Role`'s JSON-Schema via the `definition` "meta". */ export interface RoleMeta { /** The final set of permissions considering also inherited roles */ final_permissions: { /** Can edit favicon, global SEO settings and no-index policy */ can_edit_favicon: boolean; /** Can change project name and 2FA settings */ can_edit_site: boolean; /** Can create/edit models and plugins */ can_edit_schema: boolean; /** Can customize content navigation bar */ can_manage_menu: boolean; /** Can change locales, timezone and UI theme */ can_edit_environment: boolean; /** Can promote environments to primary and manage maintenance mode */ can_promote_environments: boolean; /** Specifies the environments the user can access */ environments_access: 'all' | 'primary_only' | 'sandbox_only'; /** Can create/edit roles and invite/remove collaborators */ can_manage_users: boolean; /** Can create/edit shared filters (both for models and the media area) */ can_manage_shared_filters?: boolean; /** Can create/edit Build triggers */ can_manage_build_triggers: boolean; /** Can create/edit webhooks */ can_manage_webhooks: boolean; /** Can create/delete sandbox environments and promote them to primary environment */ can_manage_environments: boolean; /** Can manage Single Sign-On settings */ can_manage_sso: boolean; /** Can access Audit Log */ can_access_audit_log: boolean; /** Can create/edit workflows */ can_manage_workflows: boolean; /** Can manage API tokens */ can_manage_access_tokens: boolean; /** Can perform Site Search API calls */ can_perform_site_search: boolean; /** Can access the build events log */ can_access_build_events_log: boolean; /** Allowed actions on a model (or all) for a role */ positive_item_type_permissions: { item_type?: ItemTypeIdentity | null; workflow?: WorkflowIdentity | null; on_stage?: null | string; to_stage?: null | string; environment: EnvironmentIdentity; /** Permitted action */ action: 'all' | 'read' | 'update' | 'create' | 'duplicate' | 'delete' | 'publish' | 'edit_creator' | 'take_over' | 'move_to_stage'; /** Permitted creator */ on_creator?: 'anyone' | 'self' | 'role' | null; /** Permitted content scope */ localization_scope?: 'all' | 'localized' | 'not_localized' | null; /** * Permitted localized content in this locale. Required when `localization_scope` * is `localized` */ locale?: string | null; }[]; /** Prohibited actions on a model (or all) for a role */ negative_item_type_permissions: { item_type?: ItemTypeIdentity | null; workflow?: WorkflowIdentity | null; on_stage?: null | string; to_stage?: null | string; environment: EnvironmentIdentity; /** Permitted action */ action: 'all' | 'read' | 'update' | 'create' | 'duplicate' | 'delete' | 'publish' | 'edit_creator' | 'take_over' | 'move_to_stage'; /** Permitted creator */ on_creator?: 'anyone' | 'self' | 'role' | null; /** Permitted content scope */ localization_scope?: 'all' | 'localized' | 'not_localized' | null; /** * Permitted localized content in this locale. Required when `localization_scope` * is `localized` */ locale?: string | null; }[]; /** Allowed actions on a model (or all) for a role */ positive_upload_permissions: { environment: EnvironmentIdentity; /** Permitted action */ action: 'all' | 'read' | 'update' | 'create' | 'delete' | 'edit_creator' | 'replace_asset'; /** Permitted creator */ on_creator?: 'anyone' | 'self' | 'role' | null; /** Permitted content scope */ localization_scope?: 'all' | 'localized' | 'not_localized' | null; /** * Permitted localized content in this locale. Required when `localization_scope` * is `localized` */ locale?: string | null; }[]; /** Prohibited actions on a model (or all) for a role */ negative_upload_permissions: { environment: EnvironmentIdentity; /** Permitted action */ action: 'all' | 'read' | 'update' | 'create' | 'delete' | 'edit_creator' | 'replace_asset'; /** Permitted creator */ on_creator?: 'anyone' | 'self' | 'role' | null; /** Permitted content scope */ localization_scope?: 'all' | 'localized' | 'not_localized' | null; /** * Permitted localized content in this locale. Required when `localization_scope` * is `localized` */ locale?: string | null; }[]; /** Allowed build triggers for a role */ positive_build_trigger_permissions: { build_trigger?: BuildTriggerIdentity | null; }[]; /** Prohibited build triggers for a role */ negative_build_trigger_permissions: { build_trigger?: BuildTriggerIdentity | null; }[]; }; } /** This interface was referenced by `Role`'s JSON-Schema via the `create.schema` link. */ export interface RoleCreateSchema { data: { type: RoleType; /** JSON API attributes */ attributes: { /** The name of the role */ name: string; /** Can edit favicon, global SEO settings and no-index policy */ can_edit_favicon?: boolean; /** Can change project name and 2FA settings */ can_edit_site?: boolean; /** Can create/edit models and plugins */ can_edit_schema?: boolean; /** Can customize content navigation bar */ can_manage_menu?: boolean; /** Can change locales, timezone and UI theme */ can_edit_environment?: boolean; /** Can promote environments to primary and manage maintenance mode */ can_promote_environments?: boolean; /** Specifies the environments the user can access */ environments_access?: 'all' | 'primary_only' | 'sandbox_only'; /** Can create/edit roles and invite/remove collaborators */ can_manage_users?: boolean; /** Can create/edit shared filters (both for models and the media area) */ can_manage_shared_filters?: boolean; /** Can create/edit Build triggers */ can_manage_build_triggers?: boolean; /** Can create/edit webhooks */ can_manage_webhooks?: boolean; /** Can create/delete sandbox environments and promote them to primary environment */ can_manage_environments?: boolean; /** Can manage Single Sign-On settings */ can_manage_sso?: boolean; /** Can access Audit Log */ can_access_audit_log?: boolean; /** Can create/edit workflows */ can_manage_workflows?: boolean; /** Can manage API tokens */ can_manage_access_tokens?: boolean; /** Can perform Site Search API calls */ can_perform_site_search?: boolean; /** Can access the build events log */ can_access_build_events_log?: boolean; /** Allowed actions on a model (or all) for a role */ positive_item_type_permissions?: { item_type?: ItemTypeIdentity | null; workflow?: WorkflowIdentity | null; on_stage?: null | string; to_stage?: null | string; environment: EnvironmentIdentity; /** Permitted action */ action: 'all' | 'read' | 'update' | 'create' | 'duplicate' | 'delete' | 'publish' | 'edit_creator' | 'take_over' | 'move_to_stage'; /** Permitted creator */ on_creator?: 'anyone' | 'self' | 'role' | null; /** Permitted content scope */ localization_scope?: 'all' | 'localized' | 'not_localized' | null; /** * Permitted localized content in this locale. Required when `localization_scope` * is `localized` */ locale?: string | null; }[]; /** Prohibited actions on a model (or all) for a role */ negative_item_type_permissions?: { item_type?: ItemTypeIdentity | null; workflow?: WorkflowIdentity | null; on_stage?: null | string; to_stage?: null | string; environment: EnvironmentIdentity; /** Permitted action */ action: 'all' | 'read' | 'update' | 'create' | 'duplicate' | 'delete' | 'publish' | 'edit_creator' | 'take_over' | 'move_to_stage'; /** Permitted creator */ on_creator?: 'anyone' | 'self' | 'role' | null; /** Permitted content scope */ localization_scope?: 'all' | 'localized' | 'not_localized' | null; /** * Permitted localized content in this locale. Required when `localization_scope` * is `localized` */ locale?: string | null; }[]; /** Allowed actions on a model (or all) for a role */ positive_upload_permissions?: { environment: EnvironmentIdentity; /** Permitted action */ action: 'all' | 'read' | 'update' | 'create' | 'delete' | 'edit_creator' | 'replace_asset'; /** Permitted creator */ on_creator?: 'anyone' | 'self' | 'role' | null; /** Permitted content scope */ localization_scope?: 'all' | 'localized' | 'not_localized' | null; /** * Permitted localized content in this locale. Required when `localization_scope` * is `localized` */ locale?: string | null; }[]; /** Prohibited actions on a model (or all) for a role */ negative_upload_permissions?: { environment: EnvironmentIdentity; /** Permitted action */ action: 'all' | 'read' | 'update' | 'create' | 'delete' | 'edit_creator' | 'replace_asset'; /** Permitted creator */ on_creator?: 'anyone' | 'self' | 'role' | null; /** Permitted content scope */ localization_scope?: 'all' | 'localized' | 'not_localized' | null; /** * Permitted localized content in this locale. Required when `localization_scope` * is `localized` */ locale?: string | null; }[]; /** Allowed build triggers for a role */ positive_build_trigger_permissions?: { build_trigger?: BuildTriggerIdentity | null; }[]; /** Prohibited build triggers for a role */ negative_build_trigger_permissions?: { build_trigger?: BuildTriggerIdentity | null; }[]; }; /** JSON API links */ relationships?: { /** The roles from which this role inherits permissions */ inherits_permissions_from?: { data: RoleData[]; }; }; meta?: RoleMeta; }; } /** This interface was referenced by `Role`'s JSON-Schema via the `create.targetSchema` link. */ export interface RoleCreateTargetSchema { data: Role; } /** This interface was referenced by `Role`'s JSON-Schema via the `update.schema` link. */ export interface RoleUpdateSchema { data: { type: RoleType; id: RoleIdentity; /** JSON API attributes */ attributes?: { /** The name of the role */ name?: string; /** Can edit favicon, global SEO settings and no-index policy */ can_edit_favicon?: boolean; /** Can change project name and 2FA settings */ can_edit_site?: boolean; /** Can create/edit models and plugins */ can_edit_schema?: boolean; /** Can customize content navigation bar */ can_manage_menu?: boolean; /** Can change locales, timezone and UI theme */ can_edit_environment?: boolean; /** Can promote environments to primary and manage maintenance mode */ can_promote_environments?: boolean; /** Specifies the environments the user can access */ environments_access?: 'all' | 'primary_only' | 'sandbox_only'; /** Can create/edit roles and invite/remove collaborators */ can_manage_users?: boolean; /** Can create/edit shared filters (both for models and the media area) */ can_manage_shared_filters?: boolean; /** Can create/edit