---
title: "Scan a website again"
method: POST
path: "/marketing/sources/{id}/refresh"
tags: ["marketing"]
---

# Scan a website again

`POST /marketing/sources/{id}/refresh`

## Request

- Base URL: `https://api.gogoscreen.com/api/v1`
- URL: `https://api.gogoscreen.com/api/v1/marketing/sources/{id}/refresh`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer

Read the same website again and publish a new manifest version beside the old ones. Projects already made keep the version they were built from; only new work sees the new one. The address must be the one the source was created with — a refresh that pointed somewhere else would silently replace a customer's site with a different one. Answers 202 with a `Location`; poll `marketing.sources.get` until `state` is terminal.

## Path parameters

- `id` string, uuid, required

## Headers

- `Idempotency-Key` string, required

## Request body

- object
  - `demo` object
  - `url` string, required: The same address the source was created with.

## Response `200`

The work was already known — the service recognised this key on its own record and queued nothing new. Answered when the 24-hour idempotency claim has expired but the work has not.

- object
  - `created` boolean, required
  - `dispatched` boolean, required: Whether the job has started. False means it is accepted and will start shortly; it is not a failure.
  - `operationId` string, required: The scan attempt. Poll the SOURCE, not this: a source has many scans and one current manifest.
  - `resource` object, required

## Other responses

- `202`: The work was queued. Poll the resource at `Location`. A retry with the same Idempotency-Key answers this again, with the same body and the same `Location`, plus `Idempotent-Replayed: true`.
- `400`: `validation_failed` — That request is not valid. · `idempotency_key_required` — This operation needs an Idempotency-Key header: a string of up to 128 characters, unique to this request, so a retry cannot do the work twice. · `url_malformed` — That address could not be read as a URL. · `url_invalid` — That address is not one this API will fetch. · `url_private` — That address resolves to a private network and will not be fetched. · `source_refresh_url_mismatch` — A refresh must name the same address the source was created with. · `website_demo_invalid` — That demo login is not valid. · `site_not_allowed` — This website can't be used: public platforms and sensitive-topic sites aren't allowed. If you think this is a mistake, write to support@gogoscreen.com or use "Talk to a person": support can allow a site by name.
- `401`: `unauthorized` — Authentication is required.
- `403`: `forbidden_scope` — This credential does not carry the scope this operation needs.
- `404`: `not_found` — No such resource. · `source_not_found` — No such source. · `source_owner_not_found` — No such account.
- `409`: `idempotency_conflict` — That idempotency key was already used with a different request. · `idempotency_in_progress` — That idempotency key is still being processed. · `conflict` — That request conflicts with the current state. · `source_inspection_busy` — A scan is already running on this account. Wait for it, or cancel it. · `source_idempotency_conflict` — That idempotency key was already used with a different scan. · `source_owner_unavailable` — That account cannot start new work. · `source_export_in_flight` — An export is still being cut from that source. Cancel it first. · `source_inspection_stopping` — That scan is still stopping. Try again in a moment.
- `410`: `source_deleted` — That source has been deleted.
- `413`: `payload_too_large` — That request body is too large.
- `415`: `unsupported_media_type` — That content type is not supported.
- `429`: `rate_limited` — Too many requests. Try again shortly.
- `500`: `internal_error` — Something went wrong. Try again.

---

[API](https://skmtc.dev/gogoscreen/apis/gogoscreen-api.md) · [All operations](https://skmtc.dev/gogoscreen/apis/gogoscreen-api/llms.txt) · [OpenAPI document](https://skmtc.dev/gogoscreen/apis/gogoscreen-api/revisions/2fd812319d75?raw)
