Canoe Intelligence Password Grant Tokens API

The Password Grant Tokens API from Canoe Intelligence — 1 operation(s) for password grant tokens.

Operations 2

POST Get an access token #
POST /v1/tokens Get an access token #

Documentation

Specifications

Other Resources

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/canoe-intelligence-password-grant-tokens-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

canoe-intelligence-password-grant-tokens-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Canoe Intelligence Password Grant Tokens API
  version: '1.0'
  description: 'Operations tagged Password Grant Tokens across 3 of this provider''s published API definitions: canoe-intelligence-api-docs-v1-original.yaml, canoe-intelligence-api-openapi-original.json, canoe-intelligence-api-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.canoesoftware.com
  description: Production API
tags:
- name: Password Grant Tokens
  description: ''
paths:
  Get an access token:
    post:
      tags:
      - Password Grant Tokens
      summary: null
      description: '/v1/tokens


        Access tokens provide access to all other endpoints within the API. This endpoint allows you to request access tokens securely without going through the OAuth2 authorization code redirect flow.

        '
      operationId: Tokens
      parameters:
      - name: username
        in: body
        description: Your username. This will be the email address associated with your account.
        required: true
        schema:
          type: string
          example:
            username: abc@xyz.com
      - name: password
        in: body
        description: Your password.
        required: true
        schema:
          type: string
          example:
            password: ab**9Pe+_.^3a!@~yql
      - name: organization_id
        in: body
        description: The organization you would like to be authenticated under (this is required if your user has access to multiple organizations).
        required: false
        schema:
          type: string
          example:
            organization_id: account_1
      requestBody:
        content:
          application/json:
            schema:
              type: string
            examples:
              bash:
                description: "-\n      curl -X POST \\\n          \"https://api.canoesoftware.com/v1/tokens\" \\\n          -H \"Authorization: Bearer {token}\" \\\n          -H \"Accept: application/json\" \\\n          -H \"X-Requested-With: XMLHttpRequest\" \\\n          -H \"Content-Type: application/json\" \\\n          -d '{\"username\":\"abc@xyz.com\",\"password\":\"ab**9Pe+_.^3a!@~yql\"}'\n"
                summary: Bash
              Javascript:
                description: "-\n      const url = new URL(\n          \"https://api.canoesoftware.com/v1/tokens\"\n      );\n\n      let headers = {\n          \"Authorization\": \"Bearer {token}\",\n          \"Accept\": \"application/json\",\n          \"X-Requested-With\": \"XMLHttpRequest\",\n          \"Content-Type\": \"application/json\",\n      };\n\n      let body = {\n          \"username\": \"abc@xyz.com\",\n          \"password\": \"ab**9Pe+_.^3a!@~yql\"\n      }\n\n      fetch(url, {\n          method: \"POST\",\n          headers: headers,\n          body: body\n      })\n          .then(response => response.json())\n          .then(json => console.log(json));\n"
                summary: JavaScript
              PHP:
                description: "-\n      $client = new \\GuzzleHttp\\Client();\n      $response = $client->post(\n          'https://api.canoesoftware.com/v1/tokens',\n          [\n              'headers' => [\n                  'Authorization' => 'Bearer {token}',\n                  'Accept' => 'application/json',\n                  'X-Requested-With' => 'XMLHttpRequest',\n                  'Content-Type' => 'application/json',\n              ],\n              'json' => [\n                  'username' => 'abc@xyz.com',\n                  'password' => 'ab**9Pe+_.^3a!@~yql',\n              ],\n          ]\n      );\n      $body = $response->getBody();\n      print_r(json_decode((string) $body));\n"
                summary: PHP
              Python:
                description: "-\n      import requests\n      import json\n\n      url = 'https://api.canoesoftware.com/v1/tokens'\n      payload = {\n          \"username\": \"abc@xyz.com\",\n          \"password\": \"ab**9Pe+_.^3a!@~yql\"\n      }\n      headers = {\n        'Authorization': 'Bearer {token}',\n        'Accept': 'application/json',\n        'X-Requested-With': 'XMLHttpRequest',\n        'Content-Type': 'application/json'\n      }\n      response = requests.request('POST', url, headers=headers, json=payload)\n      response.json()\n"
                summary: Python
              CSharp:
                description: "-\n      using RestSharp;\n\n      var client = new RestClient(\"https://api.canoesoftware.com/\");\n      var request = new RestRequest(\"v1/tokens\", Method.Post);\n      request.AddHeader(\"Accept\", \"application/json\");\n      request.AddHeader(\"X-Requested-With\", \"XMLHttpRequest\");\n      request.AddHeader(\"Content-Type\", \"application/json\");\n      var body = new\n      {\n          username = \"abc@xyz.com\",\n          password = \"ab**9Pe+_.^3a!@~yql\"\n      };\n      request.AddJsonBody(body);\n      var response = client.Execute(request);\n      Console.WriteLine(response.Content);\n"
                summary: CSharp
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Token'
  /v1/tokens:
    post:
      tags:
      - Password Grant Tokens
      summary: Get an access token
      description: Access tokens provide access to all other endpoints within the API. This endpoint allows you to request access tokens securely without going through the OAuth2 authorization code redirect flow.
      operationId: Tokens
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                username:
                  type: string
                  description: Your username. This will be the email address associated with your account.
                  example: abc@xyz.com
                password:
                  type: string
                  description: Your password.
                  example: ab**9Pe+_.^3a!@~yql
                organization_id:
                  type: string
                  description: The organization you would like to be authenticated under (this is required if your user has access to multiple organizations).
                  example: account_1
              required:
              - username
              - password
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Token'
      x-codeSamples:
      - lang: bash
        label: Bash
        source: "curl -X POST \\\n          \"https://api.canoesoftware.com/v1/tokens\" \\\n          -H \"Authorization: Bearer {token}\" \\\n          -H \"Accept: application/json\" \\\n          -H \"X-Requested-With: XMLHttpRequest\" \\\n          -H \"Content-Type: application/json\" \\\n          -d '{\"username\":\"abc@xyz.com\",\"password\":\"ab**9Pe+_.^3a!@~yql\"}'"
      - lang: javascript
        label: JavaScript
        source: "const url = new URL(\n          \"https://api.canoesoftware.com/v1/tokens\"\n      );\n\n      let headers = {\n          \"Authorization\": \"Bearer {token}\",\n          \"Accept\": \"application/json\",\n          \"X-Requested-With\": \"XMLHttpRequest\",\n          \"Content-Type\": \"application/json\",\n      };\n\n      let body = {\n          \"username\": \"abc@xyz.com\",\n          \"password\": \"ab**9Pe+_.^3a!@~yql\"\n      }\n\n      fetch(url, {\n          method: \"POST\",\n          headers: headers,\n          body: body\n      })\n          .then(response => response.json())\n          .then(json => console.log(json));"
      - lang: php
        label: PHP
        source: "$client = new \\GuzzleHttp\\Client();\n      $response = $client->post(\n          'https://api.canoesoftware.com/v1/tokens',\n          [\n              'headers' => [\n                  'Authorization' => 'Bearer {token}',\n                  'Accept' => 'application/json',\n                  'X-Requested-With' => 'XMLHttpRequest',\n                  'Content-Type' => 'application/json',\n              ],\n              'json' => [\n                  'username' => 'abc@xyz.com',\n                  'password' => 'ab**9Pe+_.^3a!@~yql',\n              ],\n          ]\n      );\n      $body = $response->getBody();\n      print_r(json_decode((string) $body));"
      - lang: python
        label: Python
        source: "import requests\n      import json\n\n      url = 'https://api.canoesoftware.com/v1/tokens'\n      payload = {\n          \"username\": \"abc@xyz.com\",\n          \"password\": \"ab**9Pe+_.^3a!@~yql\"\n      }\n      headers = {\n        'Authorization': 'Bearer {token}',\n        'Accept': 'application/json',\n        'X-Requested-With': 'XMLHttpRequest',\n        'Content-Type': 'application/json'\n      }\n      response = requests.request('POST', url, headers=headers, json=payload)\n      response.json()"
      - lang: csharp
        label: CSharp
        source: "using RestSharp;\n\n      var client = new RestClient(\"https://api.canoesoftware.com/\");\n      var request = new RestRequest(\"v1/tokens\", Method.Post);\n      request.AddHeader(\"Accept\", \"application/json\");\n      request.AddHeader(\"X-Requested-With\", \"XMLHttpRequest\");\n      request.AddHeader(\"Content-Type\", \"application/json\");\n      var body = new\n      {\n          username = \"abc@xyz.com\",\n          password = \"ab**9Pe+_.^3a!@~yql\"\n      };\n      request.AddJsonBody(body);\n      var response = client.Execute(request);\n      Console.WriteLine(response.Content);"
      security: []
    servers:
    - url: https://api.canoesoftware.com
      description: Production API
components:
  schemas:
    Token:
      type: object
      properties:
        token_type:
          type: string
          description: A parameter in the Access Token generation call within the Authorization server. This represents how an access_token will be generated and presented for resource access calls.
          example: Bearer
        expires_in:
          type: integer
          description: The lifetime in seconds of the access token. For example, the value 3600 denotes that the access token will expire in one hour from the time the response was generated.
          example: 3600
        access_token:
          type: string
          description: An access_token is a unique string of letters and numbers that you pass with an API call. The access token represents the authorization of a specific application to access specific parts of a user's data. Access tokens must be kept confidential both in transit and in storage.
          example: 'eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjM5YjA4ZmZkZjQ5ZmRiNDYxMzk4MTY0ODNkMGVlNmNjMjA2ZmYxMDU1ODVhMDUwM2ViZmY3Mzg4OTMzN2I4NTI5Mzg1MWY5ZTBjN2YzYzNmIn0.eyJhdWQiOiJhZjFhMjVjNC1hNDE3LTEx

            ZTktOTZmYy0wNmY3NWI2ZjJiNGEiLCJqdGkiOiIz

            OWIwOGZmZGY0OWZkYjQ2MTM5ODE2NDgzZDBlZTZjYzIwNmZmMTA1NTg1YTA1MDNlYmZmNzM4ODkzMzdiODUyOTM4NTFmOWUwYzdmM2MzZiIsImlhdCI6MTU2Mjg3NjI1MiwibmJmIjoxNTYyODc2MjUyLCJleHAiOjE1NjQx

            NzIyNTEsInN1YiI6IjE2MzhlZDRhLTY4MTItYTNh

            Yy0wMDA1LTUzYmI5MjJjNGFiYiIsInNjb3BlcyI6W

            119.t7wflHG7Og9Vf1rqPWo2QzCyyAo3AUc9duZyoM

            EQ8dix5Omt5OWqHX6TWYddxbC34fvRi1Gby4CqK9Kz-s-0GMr2YnWxBPCzAIGlKMRVKbs615bQTpChG0a5BWzcUMOww1zhL9Gz8aSg2yI47kAHFnVPZFGH4zA2yqcRvmg7QvoYzQcm4hJR6NatMJgKOChagUDthdj-ezWwWq_pyCXZFU2XwLm1vBZTIkgG40uCbqgsEUffDXFibQypBG9BrUkw03o9wh72UoL-QeMHn5K5Q7zJx08pzOUXWm_W4pfO7FIwzaHoOEtFmorSihnw7gzDddwASwMzhYgqF839J7CLa_mq6YV53oMP2eCOKX0jN-dd

            Eg4Gt6yYkVbh54yOsbztc4P1waUJ4JnJsBV2GdWd

            xnB0bhx6QFhj4HrnkQzx1GScFjRzKPHJGGmN9e-6wCEb7TXncbtnuu-8YxCbG5IUfc25BlBtMeqURE1A6Pa7YciBJoPLlEDUAJ8HwfSHspxDkuPhz1ospacDJgl

            xHn18Mrkt8lukwIL7dfhM9Wm2b6ZBJrKngFdkFV9ALFImjBwqk2SZVfhLMYvhTG36qGqI7e7uw_SyU2lPiN2MQcVpdaSd0NkCLqGAkRRwuDCaHBfZ35TJguJXHdJuRMDoghUAhYgAwqp7OU1FtgX1gmt5tok'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: 'Enter your Bearer token in the format: Bearer {token}'
    oauth2:
      type: oauth2
      description: OAuth 2.0 authentication
      flows:
        authorizationCode:
          authorizationUrl: https://api.canoesoftware.com/oauth/authorize
          tokenUrl: https://api.canoesoftware.com/oauth/token
          scopes: {}
        clientCredentials:
          tokenUrl: https://api.canoesoftware.com/v1/tokens
          scopes: {}
externalDocs:
  description: Click to download docs in JSON format
  url: /api/docs.json
x-refined-from:
- canoe-intelligence-api-docs-v1-original.yaml
- canoe-intelligence-api-openapi-original.json
- canoe-intelligence-api-openapi.yml
x-tagGroups:
- name: Getting Started
  tags:
  - Introduction
  - Authentication
  - Password Grant Tokens
- name: Core Resources
  tags:
  - Documents
  - Funds
  - Terms
  - Organizations
  - Allocations
  - Custom Fields
- name: User Management
  tags:
  - User