Watch a live product demo 👀 See how Sanity powers richer commerce experiences

Query for PDF not working - How to Query for a PDF

10 replies
Last updated: Jun 23, 2022
Hi there, I'm trying to query for a pdf that I've saved on sanity. It is of the type: "file". It currently looks like this when I print it:
PDF: { _type: 'file', asset: [Object] },

I want to access the object for its url so I can use it in an href like so:

<a href={pdf}/>

I tried like the docs suggest but it doesn't seem to work:



Jun 23, 2022, 2:57 PM
What doesn’t work? What data do you receive from your query? 🙂
Jun 23, 2022, 3:02 PM
It is a PDF file.
What doesn't seem to work is trying to unpack the object for its URL?
Jun 23, 2022, 3:04 PM
Hence why I ask what you get back from your query. Can you log it? 🙂
Jun 23, 2022, 3:05 PM
Yes, it looks like this:
PDF: { _type: 'file', asset: [Object] },
Jun 23, 2022, 3:06 PM
or otherwise this:

_type: 'file',

asset: {

_ref: 'file-f3654343bdaadea9dd8f256455b63afdc270637a-pdf',

_type: 'reference'


Jun 23, 2022, 3:06 PM
Right, to that means the asset hasn’t been resolved. Can you show the way you declare the field in your schema and your query itself?
Jun 23, 2022, 3:07 PM
Sure it looks like this:


name: "PDF",

title: "PDF",

type: "file",

description: "The pdf",

Jun 23, 2022, 3:08 PM
Alright, can you try this please?
"PDF": PDF.asset -> url
Jun 23, 2022, 3:09 PM
ahh voila! That worked. Thanks 🙂
Jun 23, 2022, 3:13 PM
Yay, amazing. 🙂
Jun 23, 2022, 3:14 PM – build remarkable experiences at scale

Sanity is a customizable solution that treats content as data to power your digital business. Free to get started, and pay-as-you-go on all plans.

Related answers

Get more help in the community Slack

TopicCategoriesFeaturedRepliesLast Updated
After adding the subtitle and running this code npm run graphql-deploy It does nothingSep 15, 2020
how to limit a reference to just one entry in Studio reference input side versus the default as-many-entries-as-you-fill-in-an-array...Sep 18, 2020
Is it possible to fetch more than one "_type" using GROQ?Nov 2, 2020
I want to add a view with the Structure builder (S.view.component) where I list similar documents based on the title. What...Sep 23, 2020
Is there a structure builder example where the format of each preview for the document list is modified?Feb 3, 2021
I have an array of references to a country schema type but it always just returns NULL values for meJan 30, 2021
Hi, I need help with a query for getting the url of an image asset. Here is what I've been trying, but I only get the _ref...Dec 1, 2020
Sanity UI looks brilliant :smiley: Is something like the current date picker possible at the moment? I’m not sure if anicon...Dec 21, 2020
Hey everyone. I have been coding and may have potentially accidentally deleted something. Does anyone know how to resolve...Dec 26, 2020
Hello everyone and happy new year :raised_hands::skin-tone-2:, I have a problem with outputting Portable Text :disappointed:...Jan 1, 2021

Related contributions

Clean Next.js + Sanity app
- Template

Official(made by Sanity team)

A clean example of Next.js with embedded Sanity ready for recomposition.

Cody Olsen
Go to Clean Next.js + Sanity app

Blog with Built-in Content Editing
- Template

Official(made by Sanity team)

A Sanity-powered blog with built-in content editing and instant previews.

Go to Blog with Built-in Content Editing