---
title: "Preview an harvesting from a source created with the given payload"
method: POST
path: "/harvest/source/preview"
tags: ["harvest"]
---

# Preview an harvesting from a source created with the given payload

`POST /harvest/source/preview`

## Request

- Base URL: `https://data.public.lu/api/1`
- URL: `https://data.public.lu/api/1/harvest/source/preview`
- Auth: none declared

## Headers

- `X-Fields` string, mask

## Request body

- HarvestSource
  - `active` boolean, required: Is this source active
  - `autoarchive` boolean, required: If enabled, datasets not present on the remote source will be automatically archived
  - `backend` string, required: The source backend
  - `config` object: The configuration as key-value pairs
  - `created_at` string, date-time, required: The source creation date
  - `deleted` string, date-time: The source deletion date
  - `description` string, markdown: The source description
  - `id` string: The source unique identifier
  - `last_job` HarvestJob
    - `created` string, date-time, required: The job creation date
    - `ended` string, date-time: The job end date
    - `errors` HarvestError[]: The job initialization errors
      - `level` string, required
      - `message` string, required
    - `id` string, required: The job execution ID
    - `items` HarvestItem[]: The job collected items
      - `args` string[]: The item positional arguments
      - `created` string, date-time, required: The item creation date
      - `dataservice` DataserviceRead
        - `acronym` string
        - `archived_at` string, date-time
        - `authorization_request_url` string
        - `availability` number
        - `base_api_url` string
        - `contact_point` ContactPoint
          - `email` string, required: The contact point's email
          - `id` string: The contact point's identifier
          - `name` string, required: The contact point's name
          - `organization` OrganizationReference
            - `class` string, required: The object class
            - `id` string, required: The object unique identifier
            - `acronym` string: The organization acronym
            - `badges` Badge[]: The organization badges
              - …
            - `logo` string: The organization logo URL
            - `logo_thumbnail` string: The organization logo thumbnail URL. This is the square (100x100) and cropped version.
            - `name` string: The organization name
            - `page` string: The organization web page URL
            - `slug` string, required: The organization string used as permalink
            - `uri` string: The organization API URI
          - `owner` UserReference
            - `class` string, required: The object class
            - `id` string, required: The object unique identifier
            - `avatar` string: The user avatar URL
            - `avatar_thumbnail` string: The user avatar thumbnail URL. This is the square (500x500) and cropped version.
            - `first_name` string: The user first name
            - `last_name` string: The user larst name
            - `page` string: The user profile page URL
            - `slug` string, required: The user permalink string
            - `uri` string, required: The user API URI
        - `created_at` string, date-time, required
        - `datasets` object: Visit this API link to see the list.
        - `deleted_at` string, date-time
        - `description` string: In markdown
        - `endpoint_description_url` string
        - `extras` object
        - `format` 'REST' | 'WMS' | 'WSL'
        - `harvest` HarvestMetadataRead
          - `archived_at` string, date-time
          - `backend` string
          - `created_at` string, date-time: Date of the creation as provided by the harvested catalog
          - `domain` string
          - `id` string, required
          - `last_update` string, date-time: Date of the last harvesting
          - `remote_id` string
          - `remote_url` string
          - `source_id` string
          - `source_url` string
          - `uri` string: RDF node ID if it's an `URIRef`. `None` if it's not present or if it's a random auto-generated ID inside the graph.
        - `has_token` boolean
        - `id` string, required
        - `is_restricted` boolean
        - `license` string: The ID of the license
        - `metadata_modified_at` string, date-time, required
        - `metrics` object
        - `organization` OrganizationReference
          - `class` string, required: The object class
          - `id` string, required: The object unique identifier
          - `acronym` string: The organization acronym
          - `badges` Badge[]: The organization badges
            - `kind` string, required: Kind of badge (certified, etc), specific to each model
          - `logo` string: The organization logo URL
          - `logo_thumbnail` string: The organization logo thumbnail URL. This is the square (100x100) and cropped version.
          - `name` string: The organization name
          - `page` string: The organization web page URL
          - `slug` string, required: The organization string used as permalink
          - `uri` string: The organization API URI
        - `owner` UserReference
          - `class` string, required: The object class
          - `id` string, required: The object unique identifier
          - `avatar` string: The user avatar URL
          - `avatar_thumbnail` string: The user avatar thumbnail URL. This is the square (500x500) and cropped version.
          - `first_name` string: The user first name
          - `last_name` string: The user larst name
          - `page` string: The user profile page URL
          - `slug` string, required: The user permalink string
          - `uri` string, required: The user API URI
        - `private` boolean: Is the dataservice private to the owner or the organization
        - `rate_limiting` string
        - `self_api_url` string: Link to the API endpoint for this dataservice
        - `self_web_url` string: Link to the udata web page for this dataservice
        - `slug` string, required
        - `tags` string[]
        - `title` string, required
      - `dataset` DatasetReference
        - `class` string, required: The object class
        - `id` string, required: The object unique identifier
        - `acronym` string: An optional dataset acronym
        - `page` string: The web page URL for this dataset
        - `title` string: The dataset title
        - `uri` string: The API URI for this dataset
      - `ended` string, date-time: The item end date
      - `errors` HarvestError[]: The item errors
        - `level` string, required
        - `message` string, required
      - `kwargs` object: The item keyword arguments
      - `logs` HarvestError[]: The item logs
        - `level` string, required
        - `message` string, required
      - `remote_id` string, required: The item remote ID to process
      - `started` string, date-time: The item start date
      - `status` 'pending' | 'started' | 'done' | 'failed' | 'skipped' | 'archived', required: The item status
    - `source` string, required: The source owning the job
    - `started` string, date-time: The job start date
    - `status` 'pending' | 'initializing' | 'initialized' | 'processing' | 'done' | 'done-errors' | 'failed', required: The job status
  - `name` string, required: The source display name
  - `organization` OrganizationReference
    - `class` string, required: The object class
    - `id` string, required: The object unique identifier
    - `acronym` string: The organization acronym
    - `badges` Badge[]: The organization badges
      - `kind` string, required: Kind of badge (certified, etc), specific to each model
    - `logo` string: The organization logo URL
    - `logo_thumbnail` string: The organization logo thumbnail URL. This is the square (100x100) and cropped version.
    - `name` string: The organization name
    - `page` string: The organization web page URL
    - `slug` string, required: The organization string used as permalink
    - `uri` string: The organization API URI
  - `owner` UserReference
    - `class` string, required: The object class
    - `id` string, required: The object unique identifier
    - `avatar` string: The user avatar URL
    - `avatar_thumbnail` string: The user avatar thumbnail URL. This is the square (500x500) and cropped version.
    - `first_name` string: The user first name
    - `last_name` string: The user larst name
    - `page` string: The user profile page URL
    - `slug` string, required: The user permalink string
    - `uri` string, required: The user API URI
  - `schedule` string: The source schedule (interval or cron expression)
  - `url` string, required: The source base URL
  - `validation` HarvestSourceValidation
    - `by` UserReference
      - `class` string, required: The object class
      - `id` string, required: The object unique identifier
      - `avatar` string: The user avatar URL
      - `avatar_thumbnail` string: The user avatar thumbnail URL. This is the square (500x500) and cropped version.
      - `first_name` string: The user first name
      - `last_name` string: The user larst name
      - `page` string: The user profile page URL
      - `slug` string, required: The user permalink string
      - `uri` string, required: The user API URI
    - `comment` string: A comment about the validation. Required on rejection
    - `on` string, date-time: Date date on which validation was performed
    - `state` 'pending' | 'accepted' | 'refused', required: Is it validated or not

## Response `200`

Success

- HarvestJobPreview
  - `created` string, date-time, required: The job creation date
  - `ended` string, date-time: The job end date
  - `errors` HarvestError[]: The job initialization errors
    - `level` string, required
    - `message` string, required
  - `id` string, required: The job execution ID
  - `items` HarvestItemPreview[]: The job collected items
    - `args` string[]: The item positional arguments
    - `created` string, date-time, required: The item creation date
    - `dataservice` DataserviceRead
      - `acronym` string
      - `archived_at` string, date-time
      - `authorization_request_url` string
      - `availability` number
      - `base_api_url` string
      - `contact_point` ContactPoint
        - `email` string, required: The contact point's email
        - `id` string: The contact point's identifier
        - `name` string, required: The contact point's name
        - `organization` OrganizationReference
          - `class` string, required: The object class
          - `id` string, required: The object unique identifier
          - `acronym` string: The organization acronym
          - `badges` Badge[]: The organization badges
            - `kind` string, required: Kind of badge (certified, etc), specific to each model
          - `logo` string: The organization logo URL
          - `logo_thumbnail` string: The organization logo thumbnail URL. This is the square (100x100) and cropped version.
          - `name` string: The organization name
          - `page` string: The organization web page URL
          - `slug` string, required: The organization string used as permalink
          - `uri` string: The organization API URI
        - `owner` UserReference
          - `class` string, required: The object class
          - `id` string, required: The object unique identifier
          - `avatar` string: The user avatar URL
          - `avatar_thumbnail` string: The user avatar thumbnail URL. This is the square (500x500) and cropped version.
          - `first_name` string: The user first name
          - `last_name` string: The user larst name
          - `page` string: The user profile page URL
          - `slug` string, required: The user permalink string
          - `uri` string, required: The user API URI
      - `created_at` string, date-time, required
      - `datasets` object: Visit this API link to see the list.
      - `deleted_at` string, date-time
      - `description` string: In markdown
      - `endpoint_description_url` string
      - `extras` object
      - `format` 'REST' | 'WMS' | 'WSL'
      - `harvest` HarvestMetadataRead
        - `archived_at` string, date-time
        - `backend` string
        - `created_at` string, date-time: Date of the creation as provided by the harvested catalog
        - `domain` string
        - `id` string, required
        - `last_update` string, date-time: Date of the last harvesting
        - `remote_id` string
        - `remote_url` string
        - `source_id` string
        - `source_url` string
        - `uri` string: RDF node ID if it's an `URIRef`. `None` if it's not present or if it's a random auto-generated ID inside the graph.
      - `has_token` boolean
      - `id` string, required
      - `is_restricted` boolean
      - `license` string: The ID of the license
      - `metadata_modified_at` string, date-time, required
      - `metrics` object
      - `organization` OrganizationReference
        - `class` string, required: The object class
        - `id` string, required: The object unique identifier
        - `acronym` string: The organization acronym
        - `badges` Badge[]: The organization badges
          - `kind` string, required: Kind of badge (certified, etc), specific to each model
        - `logo` string: The organization logo URL
        - `logo_thumbnail` string: The organization logo thumbnail URL. This is the square (100x100) and cropped version.
        - `name` string: The organization name
        - `page` string: The organization web page URL
        - `slug` string, required: The organization string used as permalink
        - `uri` string: The organization API URI
      - `owner` UserReference
        - `class` string, required: The object class
        - `id` string, required: The object unique identifier
        - `avatar` string: The user avatar URL
        - `avatar_thumbnail` string: The user avatar thumbnail URL. This is the square (500x500) and cropped version.
        - `first_name` string: The user first name
        - `last_name` string: The user larst name
        - `page` string: The user profile page URL
        - `slug` string, required: The user permalink string
        - `uri` string, required: The user API URI
      - `private` boolean: Is the dataservice private to the owner or the organization
      - `rate_limiting` string
      - `self_api_url` string: Link to the API endpoint for this dataservice
      - `self_web_url` string: Link to the udata web page for this dataservice
      - `slug` string, required
      - `tags` string[]
      - `title` string, required
    - `dataset` DatasetPreview
      - `acronym` string: An optional dataset acronym
      - `archived` string, date-time: The archival date if archived
      - `badges` Badge[]: The dataset badges
        - `kind` string, required: Kind of badge (certified, etc), specific to each model
      - `community_resources` CommunityResource[]
        - `checksum` Checksum
          - `type` 'sha1' | 'sha2' | 'sha256' | 'md5' | 'crc': The hashing algorithm used to compute the checksum
          - `value` string, required: The resulting checksum/hash
        - `created_at` string, date-time: The resource creation date
        - `description` string, markdown: The resource markdown description
        - `extras` object: Extra attributes as key-value pairs
        - `filesize` integer: The resource file size in bytes
        - `filetype` 'file' | 'remote', required: Whether the resource is an uploaded file, a remote file or an API
        - `format` string, required: The resource format
        - `harvest` HarvestResourceMetadata
          - `created_at` string, date-time: The resource harvested creation date
          - `modified_at` string, date-time: The resource harvest last modification date
          - `uri` string: The resource harvest uri
        - `id` string: The resource unique ID
        - `internal` ResourceInternals
          - `created_at_internal` string, date-time, required: The resource's internal creation date on the site
          - `last_modified_internal` string, date-time, required: The resource's internal last modification date
        - `last_modified` string, date-time: The resource last modification date
        - `latest` string: The permanent URL redirecting to the latest version of the resource. When the resource data is updated, the URL will change, the latest URL won't.
        - `metrics` object: The resource metrics
        - `mime` string: The resource mime type
        - `preview_url` string: An optional preview URL to be loaded as a standalone page (ie. iframe or new page)
        - `schema` Schema
          - `name` string
          - `url` string
          - `version` string
        - `title` string, required: The resource title
        - `type` 'main' | 'documentation' | 'update' | 'api' | 'code' | 'other', required: Resource type (documentation, API...)
        - `url` string, required: The resource URL
        - `dataset` DatasetReference
          - `class` string, required: The object class
          - `id` string, required: The object unique identifier
          - `acronym` string: An optional dataset acronym
          - `page` string: The web page URL for this dataset
          - `title` string: The dataset title
          - `uri` string: The API URI for this dataset
        - `organization` OrganizationReference
          - `class` string, required: The object class
          - `id` string, required: The object unique identifier
          - `acronym` string: The organization acronym
          - `badges` Badge[]: The organization badges
            - `kind` string, required: Kind of badge (certified, etc), specific to each model
          - `logo` string: The organization logo URL
          - `logo_thumbnail` string: The organization logo thumbnail URL. This is the square (100x100) and cropped version.
          - `name` string: The organization name
          - `page` string: The organization web page URL
          - `slug` string, required: The organization string used as permalink
          - `uri` string: The organization API URI
        - `owner` UserReference
          - `class` string, required: The object class
          - `id` string, required: The object unique identifier
          - `avatar` string: The user avatar URL
          - `avatar_thumbnail` string: The user avatar thumbnail URL. This is the square (500x500) and cropped version.
          - `first_name` string: The user first name
          - `last_name` string: The user larst name
          - `page` string: The user profile page URL
          - `slug` string, required: The user permalink string
          - `uri` string, required: The user API URI
      - `contact_point` ContactPoint
        - `email` string, required: The contact point's email
        - `id` string: The contact point's identifier
        - `name` string, required: The contact point's name
        - `organization` OrganizationReference
          - `class` string, required: The object class
          - `id` string, required: The object unique identifier
          - `acronym` string: The organization acronym
          - `badges` Badge[]: The organization badges
            - `kind` string, required: Kind of badge (certified, etc), specific to each model
          - `logo` string: The organization logo URL
          - `logo_thumbnail` string: The organization logo thumbnail URL. This is the square (100x100) and cropped version.
          - `name` string: The organization name
          - `page` string: The organization web page URL
          - `slug` string, required: The organization string used as permalink
          - `uri` string: The organization API URI
        - `owner` UserReference
          - `class` string, required: The object class
          - `id` string, required: The object unique identifier
          - `avatar` string: The user avatar URL
          - `avatar_thumbnail` string: The user avatar thumbnail URL. This is the square (500x500) and cropped version.
          - `first_name` string: The user first name
          - `last_name` string: The user larst name
          - `page` string: The user profile page URL
          - `slug` string, required: The user permalink string
          - `uri` string, required: The user API URI
      - `created_at` string, date-time, required: This date is computed between harvested creation date if any and site's internal creation date
      - `deleted` string, date-time: The deletion date if deleted
      - `description` string, markdown, required: The dataset description in markdown
      - `extras` object: Extras attributes as key-value pairs
      - `featured` boolean: Is the dataset featured
      - `frequency` 'unknown' | 'punctual' | 'continuous' | 'hourly' | 'semidaily' | 'daily' | 'threeTimesAWeek' | 'semiweekly' | 'weekly' | 'biweekly' | 'threeTimesAMonth' | 'semimonthly' | 'monthly' | 'bimonthly' | 'quarterly' | 'threeTimesAYear' | 'semiannual' | 'annual' | 'biennial' | 'triennial' | 'quadrennial' | 'quinquennial' | 'decennial' | 'irregular' | 'never' | 'notPlanned', required: The update frequency
      - `frequency_date` string, date-time: Next expected update date, you will be notified once that date is reached.
      - `harvest` HarvestDatasetMetadata
        - `archived` string: The reason the dataset has been archived
        - `archived_at` string, date-time: The archive date
        - `backend` string: Harvest backend used
        - `created_at` string, date-time: The dataset harvested creation date
        - `dct_identifier` string: The dct:identifier property from the harvested dataset
        - `domain` string: The harvested domain
        - `last_update` string, date-time: The last harvest date
        - `modified_at` string, date-time: The dataset harvest last modification date
        - `remote_id` string: The dataset remote id on the source portal
        - `remote_url` string: The dataset remote url
        - `source_id` string: The harvester id
        - `uri` string: The dataset harveted uri
      - `id` string: The dataset identifier
      - `internal` DatasetInternals
        - `created_at_internal` string, date-time, required: The dataset's internal creation date on the site
        - `last_modified_internal` string, date-time, required: The dataset's internal last modification date
      - `last_modified` string, date-time, required: The dataset last modification date
      - `last_update` string, date-time, required: The resources last modification date
      - `license` string: The dataset license
      - `metrics` object: The dataset metrics
      - `organization` OrganizationReference
        - `class` string, required: The object class
        - `id` string, required: The object unique identifier
        - `acronym` string: The organization acronym
        - `badges` Badge[]: The organization badges
          - `kind` string, required: Kind of badge (certified, etc), specific to each model
        - `logo` string: The organization logo URL
        - `logo_thumbnail` string: The organization logo thumbnail URL. This is the square (100x100) and cropped version.
        - `name` string: The organization name
        - `page` string: The organization web page URL
        - `slug` string, required: The organization string used as permalink
        - `uri` string: The organization API URI
      - `owner` UserReference
        - `class` string, required: The object class
        - `id` string, required: The object unique identifier
        - `avatar` string: The user avatar URL
        - `avatar_thumbnail` string: The user avatar thumbnail URL. This is the square (500x500) and cropped version.
        - `first_name` string: The user first name
        - `last_name` string: The user larst name
        - `page` string: The user profile page URL
        - `slug` string, required: The user permalink string
        - `uri` string, required: The user API URI
      - `page` string: The dataset page URL (fake)
      - `private` boolean: Is the dataset private to the owner or the organization
      - `quality` object: The dataset quality
      - `resources` Resource[]
        - `checksum` Checksum
          - `type` 'sha1' | 'sha2' | 'sha256' | 'md5' | 'crc': The hashing algorithm used to compute the checksum
          - `value` string, required: The resulting checksum/hash
        - `created_at` string, date-time: The resource creation date
        - `description` string, markdown: The resource markdown description
        - `extras` object: Extra attributes as key-value pairs
        - `filesize` integer: The resource file size in bytes
        - `filetype` 'file' | 'remote', required: Whether the resource is an uploaded file, a remote file or an API
        - `format` string, required: The resource format
        - `harvest` HarvestResourceMetadata
          - `created_at` string, date-time: The resource harvested creation date
          - `modified_at` string, date-time: The resource harvest last modification date
          - `uri` string: The resource harvest uri
        - `id` string: The resource unique ID
        - `internal` ResourceInternals
          - `created_at_internal` string, date-time, required: The resource's internal creation date on the site
          - `last_modified_internal` string, date-time, required: The resource's internal last modification date
        - `last_modified` string, date-time: The resource last modification date
        - `latest` string: The permanent URL redirecting to the latest version of the resource. When the resource data is updated, the URL will change, the latest URL won't.
        - `metrics` object: The resource metrics
        - `mime` string: The resource mime type
        - `preview_url` string: An optional preview URL to be loaded as a standalone page (ie. iframe or new page)
        - `schema` Schema
          - `name` string
          - `url` string
          - `version` string
        - `title` string, required: The resource title
        - `type` 'main' | 'documentation' | 'update' | 'api' | 'code' | 'other', required: Resource type (documentation, API...)
        - `url` string, required: The resource URL
      - `schema` Schema
        - `name` string
        - `url` string
        - `version` string
      - `slug` string, required: The dataset permalink string
      - `spatial` SpatialCoverage
        - `geom` GeoJSON
          - `coordinates` object[], required: The geometry as coordinates lists
          - `type` 'Point' | 'LineString' | 'Polygon' | 'MultiPoint' | 'MultiLineString' | 'MultiPolygon', required: The GeoJSON Type
        - `granularity` string: The spatial/territorial granularity
        - `zones` string[]: The covered zones identifiers
      - `tags` string[]
      - `temporal_coverage` TemporalCoverage
        - `end` string, date-time, required: The temporal coverage end date
        - `start` string, date-time, required: The temporal coverage start date
      - `title` string, required: The dataset title
      - `uri` string: The dataset API URI (fake)
    - `ended` string, date-time: The item end date
    - `errors` HarvestError[]: The item errors
      - `level` string, required
      - `message` string, required
    - `kwargs` object: The item keyword arguments
    - `logs` HarvestError[]: The item logs
      - `level` string, required
      - `message` string, required
    - `remote_id` string, required: The item remote ID to process
    - `started` string, date-time: The item start date
    - `status` 'pending' | 'started' | 'done' | 'failed' | 'skipped' | 'archived', required: The item status
  - `source` string, required: The source owning the job
  - `started` string, date-time: The job start date
  - `status` 'pending' | 'initializing' | 'initialized' | 'processing' | 'done' | 'done-errors' | 'failed', required: The job status

---

[API](https://skmtc.dev/public/apis/udata-api.md) - [All operations](https://skmtc.dev/public/apis/udata-api/llms.txt) - [OpenAPI document](https://skmtc.dev/public/apis/udata-api/revisions/3f583ca74f7e?raw)
