Embedded tier
The gallery runs on your site. Not ours.
Your client opens your website, signs in, and looks at the selects. Same folders, same likes, same call sheets. Our name is nowhere on the page. One script tag, your domain, your logo, and a REST API behind all of it.
What your client sees
Nothing that says Scout Lane.
The point of this tier is that the client never learns there is a vendor. They get a link on your domain and a login you issued.
gallery.yourstudio.com
A subdomain you own, pointed at us with one CNAME. We issue the certificate and renew it. Or skip the subdomain and put the gallery on a page of your main site — most customers do both.
Your logo, your accent
One SVG and one hex value. They apply to the login screen, the gallery header, the download screens and the emails the system sends on your behalf.
No powered-by
No wordmark, no footer credit, no link back. The only name in front of your client is yours, including in the browser tab.
The whole gallery
Folders, categories, likes, notes, shoot docs, zip downloads, analytics. Nothing is cut down because it is running inside your page.
The integration
One script tag and a mount call.
Give it a container, tell it which workspace and which project. The SDK draws the login and the gallery inside that element. It loads nothing from a CDN and it does not reach into the rest of your CSS.
<!-- Anywhere on your page. Give the container a height. -->
<div id="gallery" style="min-height:70vh"></div>
<script src="https://scoutlane.fmlyprod.com/embed.js"></script>
<script>
window.ScoutLane.mount({
el: '#gallery',
org: 'northbank',
project: 'sunhill-spring'
});
</script>
el takes a CSS selector or an element. org and project are the slugs you already see in your Scout Lane URLs, so the page a client bookmarks is stable for the life of the job.
The SDK signs the client in against /api/embed/session and holds a bearer token in the page. Third-party cookies are dead, so we never ask for one — which also means the embed keeps working in Safari with cross-site tracking blocked.
It only runs on origins you have registered. An unregistered origin gets a CORS refusal and the gallery does not render. That is the point: nobody can lift your snippet and serve your client’s stills from their own site.
Custom domain
One CNAME, then we take it from there.
You add a single record. We watch for it, issue the certificate, and renew it for as long as you are a customer. The exact target comes on the setup call, because it differs if you are on a dedicated node.
Add the origins you will embed from at the same time — every scheme://host[:port] including staging. They are editable later from the admin app.
Links you already emailed keep working. The old Scout Lane URL stays valid alongside your domain, so a switch mid-project does not strand a client on a dead link.
REST API
The same API the admin app uses.
There is no second-class public API. Every screen our own interface draws is this API, and your key reaches the same routes. Create keys in Workspace → API keys. A key is shown once, on creation, and after that we only hold its prefix and a hash.
# The key is shown once, when you create it. Keep it server-side.
export SL_KEY=sl_live_kJ3f9Qc0mZp7vR2t
# Every active project in your workspace.
curl "https://scoutlane.fmlyprod.com/api/projects?status=active" \
-H "Authorization: Bearer $SL_KEY"
# Open a client login on one of them. The password comes back once.
PROJECT=9e4c0b7a-2f18-4d51-9a3c-77b1e0c6d842
curl -X POST "https://scoutlane.fmlyprod.com/api/projects/$PROJECT/guests" \
-H "Authorization: Bearer $SL_KEY" \
-H "Content-Type: application/json" \
-d '{"username":"sunhill","display_name":"Sunhill Agency","can_download":true}'
A key is bound to your workspace and cannot read anything outside it. Every query in the backend carries the workspace id, even where the row id alone would be unique.
Rotate by creating a second key, deploying it, then deleting the first. Keys carry a name and a last-used date so you can tell which integration is still holding one.
Common uses: opening a gallery from your own project database the moment a job is greenlit, pushing selects back into your asset manager, and pulling the like list into a call sheet without anyone logging in.
Included
Everything in Agency, plus the parts that need us.
Embed SDK
The script tag, the mount call, and the registered-origin list behind it.
Custom domain
Your subdomain, certificate issued and renewed by us.
REST API and keys
Named keys, shown once, revocable, scoped to your workspace.
SSO
Your staff sign in with the identity provider you already run.
No Scout Lane branding
Removed everywhere a client can see, including outbound email.
Unlimited projects
And unlimited client logins, and unlimited staff seats.
6 TB storage
Overage is billed at €0.02 per GB per month on the average.
Analytics
Who opened it, for how long, on what, and what they liked.
Field upload portal
Token links a scout can upload to from a phone, with no account.
Watermarking and bulk export
For the jobs where the stills leave the building before the contract lands.
Priority support
A named contact, not a queue. Answers on working days.
Written SLA
Uptime, response times, and what we owe you if we miss them.
Timeline
About two weeks, honestly.
Half a day of your developer’s time, spread over a fortnight of waiting on DNS and on a real project to test against. The code is never the slow part. Getting access to the DNS from whoever built your website five years ago usually is.
We do not start the monthly billing until the gallery is live on your domain.
-
Day 0
Setup call, 45 minutes
Your developer on the line, and whoever holds the DNS. We agree the domain, the origins, and where on your site the gallery sits.
-
Day 1
Workspace and keys
We create the workspace, load your logo and accent, register the staging origin and issue a key. You get a test project with real photographs in it, not placeholders.
-
Day 2 to 3
DNS and certificate
You add the CNAME. The certificate is issued within an hour of it propagating, and renewal is ours from then on.
-
Day 4 to 7
The snippet goes in
Your developer drops the mount call into a staging page. Usually an afternoon. We are on email for the whole of it.
-
Week 2
A real job
You run one live project through it with a real client, and we watch the logs on the first day. Then production, and the setup call closes.
What we need from you
Six things, and none of them are long.
Bring these to the call and the first four days collapse into one.
- A DNS CNAMEOn the subdomain you want. You keep control of the zone; we never ask for your registrar login.
- A list of allowed originsEvery scheme://host[:port] the embed will run from. Production, www, and staging count as three.
- A logoSVG preferred. Otherwise PNG at 2x on transparent, at least 400px wide.
- One accent colourA hex value. It is used sparingly — on buttons and on the like state, not as a wash.
- One developerSomeone we can email directly. Not a ticket queue at the agency that maintains your site.
- Half a day of their timeSpread across the fortnight. The snippet itself is ten minutes; the rest is your own deploy process.
Straight answers
What Embedded is not.
It is not a theme
You get your logo, your accent and a dark surface built to sit next to photographs. It will not inherit your type scale or your grid. If you need pixel-identical chrome, we are the wrong answer.
It is not a reseller licence
You can run your own clients through it under your own name. You cannot sell Scout Lane workspaces on to other production companies. If that is the plan, say so and we will talk about it properly.
It will not run anywhere
Unregistered origins and file:// are refused. Adding an origin takes a minute in the admin app, but it is a deliberate step, not an oversight.
You may not need it
If you want gallery.yourstudio.com and the API but no code on your own site, that is the Agency plan at €119 a month, and it needs no developer at all. Compare the plans.
Embedded
€249
per month, excl. VAT. €2,490 paid yearly.
Setup
€490
One-off. The call, the domain, the origins, the first review.
Launch pricing. It is held for the life of your account — when the catalogue price goes up, yours does not. Cancel with 30 days’ notice and we export everything to a drive you can read without us.
Book a setup call
45 minutes, screens shared.
We look at your site, work out where the gallery goes, and tell you on the call if Embedded is wrong for you. Two of the last ten calls ended with us putting the company on Studio instead.
Reply comes from a person, within one working day.