Appetize Docs
HomeDemoUploadPricing
  • Introduction
  • Platform
    • App Management
      • Uploading Apps
        • Android
        • iOS
      • App Dashboard
      • Running Apps
      • App Permissions
    • Device Sandbox
    • Embedding
    • Sharing
    • Session Inactivity Timeout
    • Query Params Reference
  • Features
    • Devices & OS Versions
    • Network Traffic Monitor
    • Debug Logs
    • UI Automation
    • Proxy
    • Language & Locale
    • Mock Location
    • Deep links
    • Launch Params
    • Media
    • Auto-grant Permissions
    • Custom Branding
    • Custom Launch Pages
    • Advanced Features
      • Android
        • ADB tunnel
        • Hide Password Visibility
      • Reserved Devices
  • Account
    • Invite your team
    • Single Sign-On
      • OpenID Connect
      • SAML
      • Azure Active Directory
      • Google Workspace (GSuite)
    • Reporting
      • Session History
      • Usage Summary
  • Infrastructure
    • Configure Network Access
    • Enterprise Hosting Options
  • JavaScript SDK
    • Configuration
    • Automation
      • Device commands
      • Touch interactions
    • API reference
      • Initialization
      • Client
      • Session
      • Types
        • AdbConnectionInfo
        • AppetizeApp
        • AndroidElementAttributes
        • Coordinates
        • DeviceInfo
        • Element
        • ElementBounds
        • IOSAccessibilityElement
        • IOSElementAttributes
        • NetworkRequest
        • NetworkResponse
        • SessionConfig
        • SwipeMove
        • RecordedAction
        • RecordedSwipeAction
        • RecordedKeypressAction
        • RecordedPosition
        • RecordedTapAction
        • RecordedTouchAction
        • UserInteraction
  • Testing
    • Getting Started
    • Writing Tests
    • Running Tests
    • Test Configuration
    • Continuous Integration
    • Record Tests (experimental)
    • Trace Viewer
    • Web Tests on Mobile Browsers
  • REST API
    • Create new app
    • Update existing app
    • Direct file uploads
    • Delete app
    • List apps
    • Usage summary
    • Devices & OS Versions
      • v1
    • IP Blocks
      • v1
  • Guides & Samples
    • Impersonation
    • Automate Sign-in Flow
    • Screenshot Automation
    • Unlock Device
    • Validate Analytics Events
    • Lock Your Device to One App
    • Test Accessibility Font Sizes
    • Common testing scenarios
    • Samples Repository
  • Deprecated
    • Cross-document messages
  • Changelog
  • Additional Support
    • Knowledge Base
    • Support Request
Powered by GitBook
On this page
  • πŸš€ Getting Started
  • 1. Get Your API Token
  • 2. Authenticate Your Requests
  • 3. Explore our API
  • Format & Conventions
  • Response Codes

REST API

Seamlessly integrate Appetize into your CI/CD pipeline by making use of our REST API.

PreviousWeb Tests on Mobile BrowsersNextCreate new app

Last updated 13 days ago

πŸš€ Getting Started

Private Instance Users If you're using a Private Enterprise Instance, update the domain for your requests:

  • For v1 APIs, use: https://custom.appetize.io

  • For v2 APIs, use: https://custom.appetize.io/api/

1. Get Your API Token

To authenticate your requests:

  • Log in to your Appetize account.

  • Navigate to to generate your API token.

Only users with admin or developer roles can access API tokens.

2. Authenticate Your Requests

Use the X-API-KEY header to authenticate every API request.

curl -X GET https://api.appetize.io/v1/apps \
  -H "X-API-KEY: your_api_token"
fetch("https://api.appetize.io/v1/apps", {
  headers: {
    "X-API-KEY": "your_api_token"
  }
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error(error));

3. Explore our API

You’re all set to start using the API.

Each endpoint includes:

  • πŸ“¦ Sample requests and responses

  • 🌐 Code samples in multiple languages (like cURL, Python, JavaScript)

Use these to quickly understand how each endpoint works and integrate it into your own tools.

Format & Conventions

  • POST requests must include a Content-Type: application/json header.

  • All responses are in JSON format.

Response Codes

Status code
Details

200

OK - Everything worked as expected.

400

Bad Request - Often missing a required parameter.

401

Unauthorized - No valid API token provided.

404

Not Found - No app found for publicKey specified.

500, 502, 503, 504

Server error - something went wrong on our server.

Organization β†’ API Token