Request Network Docs
WebsiteGithubStatusDiscord
  • Request Network Docs
  • Request Network API
    • Create and Pay Requests
    • Crosschain Payments
    • EasyInvoice: API Demo App
    • API Portal: Manage API Keys and Webhooks
      • Manage API Keys and Webhooks programmatically
    • Full API Reference
  • General
    • Lifecycle of a Request
    • Request Scan
    • Supported Chains
      • Smart Contract Addresses
    • Request Network Token List
  • Advanced
    • Request Network SDK
      • Get Started
        • Quickstart - Browser
        • Quickstart - Node.js
        • Installation
        • SDK Injector
        • Request Node Gateways
      • SDK Demo Apps
        • Request Invoicing
          • Pay from Safe Multisig
        • Request Checkout
        • Components
          • Create Invoice Form
          • Invoice Dashboard
          • Payment Widget
          • Add Stakeholder
      • SDK Guides
        • Request Client
          • Configure the Request Client
          • Updating a Request
          • Payment Reference
          • Compute a Request ID without creating the request
          • Use your own signature mechanism
          • Support a new currency
          • In-Memory Requests
        • Encryption and Decryption
          • Encrypt with a wallet signature using Lit Protocol
          • Encrypt with an Ethereum private key
          • Share an encrypted request
        • Payment
          • Detect a payment
          • Native Payment
          • Conversion Payment
          • Declarative Payment
          • Configuring Payment Fees
          • Single Request Forwarder
          • Batch Payment
          • Swap-to-Pay Payment
          • Swap-to-Conversion Payment
          • Transferable Receivable Payment
          • Meta Payments
          • Escrow Payment
          • Streaming Payment
          • Pay through a proxy-contract with a multisig
          • Hinkal Private Payments
        • Mobile using Expo
      • SDK Reference
        • request-client.js
          • RequestNetwork
            • createRequest()
            • computeRequestId()
            • fromRequestId()
            • fromIdentity()
            • fromTopic()
          • Request
            • waitForConfirmation()
            • getData()
            • refresh()
            • cancel()
            • accept()
            • increaseExpectedAmountRequest()
            • reduceExpectedAmountRequest()
          • IIdentity
          • IRequestDataWithEvents
          • PaymentReferenceCalculator
        • payment-processor
          • payRequest()
        • web3-signature
          • Web3SignatureProvider
        • epk-signature
          • EthereumPrivateKeySignatureProvider
        • epk-decryption
          • EthereumPrivateKeyDecryptionProvider
    • Protocol Overview
      • SDK and Request Node Overview
      • Payment Networks
      • Private Requests using Encryption
      • Smart Contracts Overview
    • Internal SDK Architecture
      • Request Logic
      • Advanced Logic
      • Transaction
      • Data-access
      • Storage
      • Data flow
      • Request IPFS network
  • FAQ
  • Glossary
  • Contributing
Powered by GitBook
On this page

Was this helpful?

Edit on GitHub
Export as PDF
  1. Request Network API
  2. API Portal: Manage API Keys and Webhooks

Manage API Keys and Webhooks programmatically

PreviousAPI Portal: Manage API Keys and WebhooksNextLifecycle of a Request

Last updated 2 months ago

Was this helpful?

This page details the endpoints for managing API keys and webhooks programmatically. These endpoints allow you to control access to the Request Network API, and receive real-time notifications about important events.

Key Features:

  • API Key Management: Create, list, toggle, and delete API keys to control access to your platform's resources. API keys are essential for authenticating your application and ensuring secure communication with the Request Network API.

  • Webhook Management: Configure and manage webhooks to receive real-time notifications about events within the Request Network. This enables your application to react instantly to payment confirmations, request updates, and other critical events.

Authentication Requirement:

Most of the endpoints described in this section require an active session_token cookie. This cookie is automatically set in your browser after a successful login. Make sure you've logged in before attempting to use these endpoints.

Authentication

Manage API Keys

Manage Webhooks

For detailed information on all available endpoints and their parameters, please refer to the full

Request Network API Reference

Logout user (Requires Session)

post

Logout and clear session

Requires session_token cookie. If you've logged in, this cookie is already set in your browser.

Header parameters
CookiestringRequired

Active session cookie (automatically included after login)

Example: session_token=<your-session-token>
Responses
200
Successfully logged out
401
Unauthorized
429
Too Many Requests
post
POST /v1/auth/logout HTTP/1.1
Host: api.request.network
Cookie: session_token=<your-session-token>
Accept: */*

No content

List API keys (Requires Session)

get

Get all API keys for your platform

Requires session_token cookie. If you've logged in, this cookie is already set in your browser.

Header parameters
CookiestringRequired

Active session cookie (automatically included after login)

Example: session_token=<your-session-token>
Responses
200
List of API keys
application/json
401
Unauthorized
429
Too Many Requests
get
GET /v1/key HTTP/1.1
Host: api.request.network
Cookie: session_token=<your-session-token>
Accept: */*
[
  {
    "id": "01JKZNG0N658N6A2R45MPEEP4F",
    "label": "My API key",
    "key": "rn_v1_5f7fucpzhyurwuafwljbgfmzmhyyyf4y",
    "isActive": true,
    "createdAt": "2025-02-13T12:45:45.512Z"
  }
]

Toggle API key (Requires Session)

put

Enable or disable an API key

Requires session_token cookie. If you've logged in, this cookie is already set in your browser.

Path parameters
idstringRequired

API key ID

Example: 01JKZNG0N658N6A2R45MPEEP4F
Header parameters
CookiestringRequired

Active session cookie (automatically included after login)

Example: session_token=<your-session-token>
Responses
200
API key toggled successfully
401
Unauthorized
404
API key not found
429
Too Many Requests
put
PUT /v1/key/{id} HTTP/1.1
Host: api.request.network
Cookie: session_token=<your-session-token>
Accept: */*

No content

Delete API key (Requires Session)

delete

Permanently delete an API key

Requires session_token cookie. If you've logged in, this cookie is already set in your browser.

Path parameters
idstringRequired

API key ID

Example: 01JKZNG0N658N6A2R45MPEEP4F
Header parameters
CookiestringRequired

Active session cookie (automatically included after login)

Example: session_token=<your-session-token>
Responses
200
API key deleted successfully
401
Unauthorized
404
API key not found
429
Too Many Requests
delete
DELETE /v1/key/{id} HTTP/1.1
Host: api.request.network
Cookie: session_token=<your-session-token>
Accept: */*

No content

List webhooks (Requires Session)

get

Get all webhooks for your platform

Requires session_token cookie. If you've logged in, this cookie is already set in your browser.

Header parameters
CookiestringRequired

Active session cookie (automatically included after login)

Example: session_token=<your-session-token>
Responses
200
List of webhooks
application/json
401
Unauthorized
429
Too Many Requests
get
GET /v1/webhook HTTP/1.1
Host: api.request.network
Cookie: session_token=<your-session-token>
Accept: */*
[
  {
    "id": "01JMMA4WWFT0VAPBAS0GYH70GQ",
    "url": "https://example.com/webhook",
    "secret": "9f8688812f6abb01ee7a36934ab10cabab4498a24d2dc080f900ced57617713c",
    "isActive": true,
    "createdAt": "2025-02-17T10:50:19.497Z"
  }
]

Toggle webhook (Requires Session)

put

Enable or disable a webhook

Requires session_token cookie. If you've logged in, this cookie is already set in your browser.

Path parameters
webhookIdstringRequired

Webhook ID

Example: 01JMMA4WWFT0VAPBAS0GYH70GQ
Header parameters
CookiestringRequired

Active session cookie (automatically included after login)

Example: session_token=<your-session-token>
Responses
200
Webhook toggled successfully
401
Unauthorized
404
Webhook not found
429
Too Many Requests
put
PUT /v1/webhook/{webhookId} HTTP/1.1
Host: api.request.network
Cookie: session_token=<your-session-token>
Accept: */*

No content

Delete webhook (Requires Session)

delete

Permanently delete a webhook

Requires session_token cookie. If you've logged in, this cookie is already set in your browser.

Path parameters
webhookIdstringRequired

Webhook ID

Example: 01JMMA4WWFT0VAPBAS0GYH70GQ
Header parameters
CookiestringRequired

Active session cookie (automatically included after login)

Example: session_token=<your-session-token>
Responses
200
Webhook deleted successfully
401
Unauthorized
404
Webhook not found
429
Too Many Requests
delete
DELETE /v1/webhook/{webhookId} HTTP/1.1
Host: api.request.network
Cookie: session_token=<your-session-token>
Accept: */*

No content

  • Authentication
  • POSTRegister a new user
  • POSTLogin user
  • POSTLogout user (Requires Session)
  • Manage API Keys
  • POSTCreate API key (Requires Session)
  • GETList API keys (Requires Session)
  • PUTToggle API key (Requires Session)
  • DELETEDelete API key (Requires Session)
  • Manage Webhooks
  • POSTCreate webhook (Requires Session)
  • GETList webhooks (Requires Session)
  • PUTToggle webhook (Requires Session)
  • DELETEDelete webhook (Requires Session)

Register a new user

post

Register a new user with an email and password

Body
emailstringRequired

Platform email

passwordstring · min: 8 · max: 100Required

Platform password

Responses
201
Successfully registered
400
Bad request - validation failed or already logged in
429
Too Many Requests
post
POST /v1/auth/register HTTP/1.1
Host: api.request.network
Content-Type: application/json
Accept: */*
Content-Length: 44

{
  "email": "name@gmail.com",
  "password": "text"
}

No content

Login user

post

Login with email and password

Body
emailstringRequired

Platform email

passwordstring · min: 8 · max: 100Required

Platform password

Responses
200
Successfully logged in
400
Bad request - validation failed or already logged in
429
Too Many Requests
post
POST /v1/auth/login HTTP/1.1
Host: api.request.network
Content-Type: application/json
Accept: */*
Content-Length: 44

{
  "email": "name@gmail.com",
  "password": "text"
}

No content

Create API key (Requires Session)

post

Create a new API key for your platform

Requires session_token cookie. If you've logged in, this cookie is already set in your browser.

Header parameters
CookiestringRequired

Active session cookie (automatically included after login)

Example: session_token=<your-session-token>
Body
labelstring · min: 1 · max: 100Required

API key label

Responses
201
API key created successfully
application/json
401
Unauthorized
429
Too Many Requests
post
POST /v1/key HTTP/1.1
Host: api.request.network
Cookie: session_token=<your-session-token>
Content-Type: application/json
Accept: */*
Content-Length: 22

{
  "label": "My API key"
}
{
  "key": "rn_v1_5f7fucpzhyurwuafwljbgfmzmhyyyf4y"
}

Create webhook (Requires Session)

post

Create a new webhook endpoint for receiving notifications

Requires session_token cookie. If you've logged in, this cookie is already set in your browser.

Header parameters
CookiestringRequired

Active session cookie (automatically included after login)

Example: session_token=<your-session-token>
Body
urlstringRequired

Webhook URL

Responses
201
Webhook created successfully
application/json
400
Webhook already exists
401
Unauthorized
429
Too Many Requests
post
POST /v1/webhook HTTP/1.1
Host: api.request.network
Cookie: session_token=<your-session-token>
Content-Type: application/json
Accept: */*
Content-Length: 37

{
  "url": "https://example.com/webhook"
}
{
  "id": "01JMMA4WWFT0VAPBAS0GYH70GQ",
  "secret": "9f8688812f6abb01ee7a36934ab10cabab4498a24d2dc080f900ced57617713c"
}