Shell Accounts API

Manage loyalty accounts

Operations 4

POST /accounts Enroll Loyalty Account #
GET /accounts/{accountId} Get Loyalty Account #
PUT /accounts/{accountId} Update Loyalty Account #
GET /accounts/{accountNumber} Get Account #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/shell-accounts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

shell-accounts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Shell B2B Mobility Accounts API
  description: The Shell B2B Mobility API enables fleet operators and business customers to manage fuel cards, retrieve transaction data, manage invoices, query fuel station sites, and control card limits and restrictions. Supports B2B fleet management workflows across the Shell global network.
  version: 2.1.0
  contact:
    name: Shell Developer Portal
    url: https://developer.shell.com/
    email: api-maintainers@shell.com
  license:
    name: Shell API Terms
    url: https://www.shell.com/terms-and-conditions
  x-date: '2026-05-02'
servers:
- url: https://api.shell.com/mobility/v2
  description: Shell B2B Mobility API
security:
- OAuth2: []
tags:
- name: Accounts
  description: Manage loyalty accounts
paths:
  /accounts:
    post:
      operationId: enrollAccount
      summary: Enroll Loyalty Account
      description: Creates a new Shell loyalty account for a customer.
      tags:
      - Accounts
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AccountEnrollRequest'
      responses:
        '201':
          description: Account enrolled successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LoyaltyAccount'
  /accounts/{accountId}:
    get:
      operationId: getAccount
      summary: Get Loyalty Account
      description: Returns details for a specific loyalty account.
      tags:
      - Accounts
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Loyalty account details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LoyaltyAccount'
    put:
      operationId: updateAccount
      summary: Update Loyalty Account
      description: Updates details for a specific loyalty account.
      tags:
      - Accounts
      parameters:
      - name: accountId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AccountUpdateRequest'
      responses:
        '200':
          description: Account updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LoyaltyAccount'
  /accounts/{accountNumber}:
    get:
      operationId: getAccount
      summary: Get Account
      description: Returns details for a lubricants customer account.
      tags:
      - Accounts
      parameters:
      - name: accountNumber
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Account details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LubricantsAccount'
components:
  schemas:
    AccountUpdateRequest:
      type: object
      properties:
        firstName:
          type: string
        lastName:
          type: string
        email:
          type: string
        phone:
          type: string
        marketingConsent:
          type: boolean
    AccountEnrollRequest:
      type: object
      required:
      - firstName
      - lastName
      - email
      properties:
        externalId:
          type: string
        firstName:
          type: string
        lastName:
          type: string
        email:
          type: string
        phone:
          type: string
        dateOfBirth:
          type: string
          format: date
        countryCode:
          type: string
        marketingConsent:
          type: boolean
    LubricantsAccount:
      type: object
      properties:
        accountNumber:
          type: string
        companyName:
          type: string
        accountType:
          type: string
        creditLimit:
          type: number
        availableCredit:
          type: number
        currency:
          type: string
        paymentTerms:
          type: string
        primaryContact:
          type: object
          properties:
            name:
              type: string
            email:
              type: string
            phone:
              type: string
    LoyaltyAccount:
      type: object
      properties:
        accountId:
          type: string
        externalId:
          type: string
          description: Partner-provided customer identifier
        status:
          type: string
          enum:
          - Active
          - Inactive
          - Suspended
        tier:
          type: string
        firstName:
          type: string
        lastName:
          type: string
        email:
          type: string
        phone:
          type: string
        dateOfBirth:
          type: string
          format: date
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
  securitySchemes:
    OAuth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://api.shell.com/oauth/token
          scopes:
            mobility.cards: Manage fuel cards
            mobility.transactions: Access transaction data
            mobility.invoices: Access invoice data
            mobility.sites: Query site data