Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  1. Fotoware Alto
    • 11.14 Schreckhorn
    • Terminology
    • Solutions
    • User Guide - Deutsch
    • User Guide - English
    • API Changelog
  2. Fotoware Veloz
    • Managing users and groups
    • Configuring archives
    • Configuring workflows
    • Configuring site behavior
    • Navigating and searching to find your assets
    • Working with your assets
    • Editing asset metadata
    • Uploading files
    • Version Control in Fotoware
    • Albums - Creating and sharing collections
    • Placing assets in a CMS
    • Working with the Fotoware Pro interface
    • Using the Fotoware plugins
    • Consent management
    • User guide to FotoWeb for iPad (Legacy)
    • Picture conferencing with FotoWeb Screens (Legacy)
    • What's what in Fotoware
    • GDPR
    • Fotoware Veloz releases
    • Activity Exports
    • Fotoware Example Workflows
  3. Fotostation
    • Getting started with Fotostation
    • Viewing, selecting and sorting files
    • Managing your assets with archives
    • Adding metadata to assets
    • Searching for assets
    • Working with your assets
    • Version Control in Fotostation
    • Automating tasks with Actions
    • Configuring metadata fields and editors
    • Configuring Fotostation
    • Configuring Fotostation for multi-user environments
    • Troubleshooting Fotostation
  4. Fotoware Flow
    • What is Flow?
    • Getting started
    • Flow dictionary
  5. Fotoware On-Premises
    • Getting started
    • Index Manager
    • FotoWeb
    • Color Factory
    • Connect
    • Operations Center Guide
  6. Integrations and APIs
    • The Fotoware API
    • Creating integrations using embeddable widgets
    • Authorizing applications using OAuth
    • Auto-tagging
    • FotoWeb Drag and Drop export
    • Integration using webhooks
    • Optimizely and Episerver plugin documentation
    • User Interface Integrations
  7. Fotoware Mobile
    • User guide for Fotoware Mobile for iPhone and Android
    • User guide to FotoWeb for iPad (Legacy)
    • User guide to FotoWeb for iPhone and Android (Legacy)

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Support

Table of Contents

Non-interactive applications Registering an application Protocol flow What's next?
  • Home
  • Integrations and APIs
  • Authorizing applications using OAuth

Non-interactive application authorization with OAuth 2.0

01. April 2025

Elaine Foley

Table of Contents

Non-interactive applications Registering an application Protocol flow What's next?

Non-interactive applications

This variant of the authorization process is for non-interactive applications, i.e., apps in which there is no user interaction. A non-interactive application gets full administrative access to all resources on the tenant; it is impossible to make requests in the context of a user.

Note: Refresh tokens are no longer supported for non-interactive integrations. There is no benefit for a non-interactive integration to use refresh tokens, as it might as well use client credentials to request a new access token. this change has been made for simplicity and to improve security. Refresh tokens can become invalid at any time, so an integration that uses them must always handle the case that a refresh token is rejected (typically by repeating authorization). Therefore, any legacy non-interactive integrations that rely on refresh tokens should still work as designed as long as they are implemented correctly. If your non-interactive integration uses refresh tokens, you can remove all support for refresh tokens and always use client credentials for requesting a new access token. Refresh tokens are supported for interactive applications and will continue to be so. No changes have been made to how they work, and their use is still encouraged when they are beneficial (to let a user stay 'logged in' to an interactive application.

Note: OAuth for non-interactive applications is intended for use with server applications or scripts, not for public clients or browser apps. The client secret must not be exposed to users or other unauthorized persons.

Registering an application

  1. From the Tools menu (cogwheel icon), go to Site Configuration > Integrations > Applications.
  2. Select Add application.
  3. From the Type drop-down list, select Non-interactive/script.
  4. Enter a name in the Name field. 
  5. Select Save. The configuration interface will generate a Client ID and a Client secret.

Make a note of the client secret (or store it immediately in application code or configuration), as there is no way to recover it after application registration. If the client secret is lost, then you have to generate a new one in the application registration interface.

Protocol flow

The client makes the following request to the token endpoint to obtain the access token. Line breaks are added for readability.

All parameter values MUST be URL-encoded.

POST https://myfotowebserver.com/fotoweb/oauth2/token
Content-Type: application/x-www-form-urlencoded
Accept: application/json

and with these parameters in the body

grant_type=client_credentials&client_id=CLIENT_ID&client_secret=CLIENT_SECRET

where

Parameter Description
grant_type REQUIRED. Must always be client_credentials
client_id REQUIRED. The unique ID of the client, which was obtained during client registration.
client_secret REQUIRED. The secret of the client, which was obtained during client registration.

On success, the server responds as follows:

200 OK
Content-Type: application/json

with the following response body:

{
 "access_token": ACCESS_TOKEN,
 "token_type": "bearer",
 "expires_in": EXPIRES_IN_SECONDS,
}

where

Parameter Description
access_token The access token that is used to authorize requests to the FotoWeb API.
token_type This is always bearer.
expires_in Number of seconds after which the token is expected to expire.

What's next? 

Learn how to use OAuth access tokens in your integration.

Was this article helpful?

Yes
No
Give feedback about this article

Related Articles

  • Application registration using OAuth 2.0
  • Authorizing a client using OAuth 2.0
  • Using application access tokens for OAuth 2.0 authorization
eco-lighthouse-miljøfyrtårn

Company

  • About us
  • Resellers
  • Careers
  • Contact us

Help & support

  • Support center
  • Consultancy
  • Tech partners
  • Fotostation
  • System status

Trust Center

  • Legal
  • Security
  • Sustainability & ESG

Locations

Fotoware AS (HQ)
Tollbugata 35
0157 OSLO
Norway
FotoWare Switzerland AG
Industriestrasse 25
5033 Buchs (AG)
Switzerland

Copyright 2025 Fotoware All rights reserved.

  • Terms of service
  • Privacy policy
  • Cookie policy

Knowledge Base Software powered by Helpjuice

Expand