oauth 0.4.0

  • README.md
  • Installing
  • Versions
  • 66

An implementation of OAuth 1.0a, as per RFC 5849.

The client portion is designed for use with the http package. The server portion is designed to work with the dart:io HttpServer class.

Supports HMAC-SHA1 and RSA-SHA1 signatures. HMAC-SHA1 is well tested, RSA-SHA1 is completely untested and experimental. PAINTEXT signatures are unsupported.

Comes with a test suite. Please report any incompatibility issues.


  • Use Random.secure() to generate random bytes
  • Updated to work with latest versions of packages like crypto
  • BREAKING: generateParameters now takes a http package Request object rather than a BaseRequest

1. Depend on it

Add this to your package's pubspec.yaml file:

  oauth: "^0.4.0"

2. Install it

You can install packages from the command line:

with pub:

$ pub get

Alternatively, your editor might support pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:oauth/oauth.dart';
Version Uploaded Documentation Archive
0.4.0 Jan 17, 2017 Go to the documentation of oauth 0.4.0 Download oauth 0.4.0 archive
0.3.0 Nov 7, 2014 Go to the documentation of oauth 0.3.0 Download oauth 0.3.0 archive
0.2.1 Aug 9, 2014 Go to the documentation of oauth 0.2.1 Download oauth 0.2.1 archive
0.2.0 May 9, 2014 Go to the documentation of oauth 0.2.0 Download oauth 0.2.0 archive
0.1.0 Apr 21, 2014 Go to the documentation of oauth 0.1.0 Download oauth 0.1.0 archive


This feature is new.
We welcome feedback.
More details: scoring.

We analyzed this package, and provided a score, details, and suggestions below.

  • tool failures on Feb 16, 2018
  • Dart: 2.0.0-dev.20.0
  • pana: 0.10.1


Describes how popular the package is relative to other packages. [more]
62 / 100
Code health derived from static analysis. [more]
75 / 100
Reflects how tidy and up-to-date the package is. [more]
62 / 100
Overall score:
Weighted score of the above. [more]


Detected platforms: unsure

Error(s) prevent platform classification.


  • Fix lib/server_shelf.dart.

    Strong-mode analysis of lib/server_shelf.dart failed with the following error:

    line: 3 col: 8
    Target of URI doesn't exist: 'package:shelf/shelf.dart'.

  • Fix lib/src/token.dart.

    Strong-mode analysis of lib/src/token.dart failed with the following error:

    line: 72 col: 9
    super call must be last in an initializer list (see https://goo.gl/EY6hDP): 'super.chain()'.

  • Fix further 1 Dart files.

    Similar analysis of the following files failed:

    • lib/server.dart
  • Fix platform conflicts.

    Make sure none of the libraries use mutually exclusive dependendencies.

  • Fix issues reported by dartanalyzer.

    dartanalyzer reported 3 error(s) and 0 warning(s).

  • The description is too short.

    Add more detail about the package, what it does and what is its target use case. Try to write at least 60 characters.

  • Package is pre-v1 release.

    While there is nothing inherently wrong with versions of 0.*.*, it usually means that the author is still experimenting with the general direction API.

  • Maintain an example.

    Create a short demo in the example/ directory to show how to use this package. Common file name patterns include: main.dart, example.dart or you could also use oauth.dart.


Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.8.0 <2.0.0
cipher >=0.7.0 <0.8.0 0.7.1
crypto ^2.0.1 2.0.2+1
http >=0.10.0 <0.12.0 0.11.3+16
Transitive dependencies
async 2.0.3 2.0.4
bignum 0.0.7 0.1.0
charcode 1.1.1
collection 1.14.5
convert 2.0.1
fixnum 0.9.1+2 0.10.7
http_parser 3.1.1
path 1.5.1
source_span 1.4.0
string_scanner 1.0.2
typed_data 1.1.5
Dev dependencies
shelf >=0.6.7+2
test >=0.10.0