How to get offline access token using remix?

How to get offline access token using remix?

mjari519
Shopify Partner
5 0 0

I am creating a new app using @Shopify/shopify-app-remix as per documentation. I want to pass an offline accesToken to my backend and use it for GraphQL Admin API? Where in the documentation can I read how to do this????? In which specific object property it is located, in which place of remix application to make a request to my backend? Is it even possible to make a request to a third-party api? Please help

 

 

export async function loader({ request }) {
  const { admin, session } = await authenticate.admin(request);
}

export default function Index() {
  const { relax } = useLoaderData();


  return (
    <Page>
      <ui-title-bar title="QR codes">
        test-app-sinevik
      </ui-title-bar>
      <Layout>
        <Layout.Section>
          <Card padding="0">
            <p>{relax}</p>
          </Card>
        </Layout.Section>
      </Layout>
    </Page>
  );
}
Replies 5 (5)

its_Nabeel
Shopify Partner
3 0 0

If you are using the Shopify Remix App template then you don't need to manually handle OAuth.

By default app will be creating and saving an offline token during OAuth. It is present in session token, You must have to check seesion object.
console log the session and you will find it

Shopify App Developer | Software Engineer
mjari519
Shopify Partner
5 0 0

I can send it right there to my backend and save it to my database right? The backend address can be anything?

mjari519
Shopify Partner
5 0 0

Maybe you know how to solve the problem with console output in remix templates?

upsellagents
Shopify Partner
1 0 0

snippet:

export const loader = async ({ request }) => {
  const { admin, session } = await authenticate.admin(request);
  console.log(session);
  console.log(session.accessToken); // this is the one you want
PeaceOut
Shopify Partner
16 0 4

Hey guys, 

 

Following up on this discussion. If i do this 

  console.log(session); I obtain a accessToken: 'shpua' 
 
Which seems to not be a token access but user access ... therefore, every GraphQL query I'm doing is resulting in permission error.
 
It seems I should have a shpat type of access token to do graphQL query. Any idea why I do get this? 

 

Thanks a lot