Microsoft Power Apps website screenshot

Microsoft Power Apps

Collection of APIs for Microsoft Power Apps platform enabling low-code application development, automation, and data connectivity.

11 APIs 5 Features
Business ApplicationsCloudEnterpriseLow-CodeMicrosoftNo-CodePower PlatformSaaS

APIs

Power Apps API

Core API for managing Power Apps applications, including creating, updating, and deleting apps.

Dataverse API (Common Data Service)

RESTful API for interacting with Microsoft Dataverse (formerly Common Data Service) for data storage and management.

Power Apps Management API

API for administrative tasks including environment management, app sharing, and user permissions.

Power Apps Connectors API

API for working with custom and standard connectors to integrate external services and data sources.

Power Apps Canvas Apps API

API specific to Canvas Apps for creating pixel-perfect user interfaces with drag-and-drop functionality.

Power Apps Model-driven Apps API

API for Model-driven Apps that automatically generate UI based on data model and business logic.

Power Apps Component Framework (PCF) API

Framework API for professional developers to create reusable code components for model-driven and canvas apps using TypeScript and web technologies.

Power Platform REST API

Unified RESTful API for Power Platform administration including environment management, governance, licensing, app management, and capacity reporting.

Power Pages Web API

Web API for Power Pages (formerly Power Apps Portals) enabling CRUD operations on Dataverse tables from external-facing portal web pages.

Dataverse Organization Service SDK

.NET SDK providing strongly-typed access to Microsoft Dataverse through the IOrganizationService interface for server-side development and plugins.

Power Apps Code Apps API

API and SDK for building code-first Power Apps using popular frameworks like React and Vue, developed in any code-first IDE and deployed to Power Apps.

Collections

Pricing Plans

Rate Limits

Microsoft Power Apps Rate Limits

9 limits

RATE LIMITS

FinOps

Features

Low-Code Development

Visual drag-and-drop app building with Power Fx formulas and pre-built templates.

Microsoft Dataverse

Built-in data platform with security, business logic, and integration capabilities.

Custom Connectors

Connect to any external API through standard and custom connector definitions.

Model-Driven Apps

Automatically generated UIs based on data model and business logic configuration.

Component Framework

Professional code components using TypeScript for custom controls in canvas and model-driven apps.

Use Cases

Business Process Automation

Digitize paper-based processes and manual workflows with custom business applications.

Customer Portal

Build external-facing portals using Power Pages with Dataverse Web API integration.

Field Service Apps

Create mobile applications for field workers with offline capabilities and data sync.

Data Management

Build CRUD applications on Dataverse for managing business data with role-based security.

Integrations

Microsoft 365

Native integration with Teams, SharePoint, Outlook, and Excel for productivity workflows.

Dynamics 365

Shared Dataverse platform with Dynamics 365 CRM and ERP modules for unified data.

Power Automate

Trigger automated flows from Power Apps for cross-system process automation.

Semantic Vocabularies

Microsoft Power Apps Context

0 classes · 5 properties

JSON-LD

Microsoft Power Apps Dataverse Web Context

0 classes · 0 properties

JSON-LD

API Governance Rules

Microsoft Power Apps API Rules

7 rules · 7 errors

SPECTRAL

JSON Structure

Microsoft Power Apps Structure

0 properties

JSON STRUCTURE

Example Payloads

Resources

🌐
DeveloperPortal
DeveloperPortal
🔗
Community
Community
📰
Blog
Blog
💰
Pricing
Pricing
🟢
StatusPage
StatusPage
💬
Support
Support
🎓
Training
Training
👥
GitHubRepository
GitHubRepository
📜
TermsOfService
TermsOfService
📜
PrivacyPolicy
PrivacyPolicy
🔗
ALM Documentation
Documentation
🔗
Pipelines
Documentation
🔗
Power Platform Developer Documentation
Documentation
🔗
CLI
CLI
🔗
Security
Security
🔗
Power Fx Overview
Documentation
🔗
Power Fx Formula Reference
Documentation
🎓
Deployment Training
Training
📄
ReleaseNotes
ReleaseNotes

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Microsoft Power Apps Microsoft Dataverse Web API
  version: '9.2'
request:
  auth:
    type: oauth2
    flow: authorization_code
    authorizationUrl: https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/authorize
    accessTokenUrl: https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/token
    credentials:
      clientId: '{{clientId}}'
      clientSecret: '{{clientSecret}}'
items:
- info:
    name: Accounts
    type: folder
  items:
  - info:
      name: Microsoft Power Apps Retrieve Multiple Accounts
      type: http
    http:
      method: GET
      url: https://{organization}.api.crm.dynamics.com/api/data/v9.2/accounts
      headers:
      - name: Prefer
        value: return=representation,odata.include-annotations="*"
      params:
      - name: $select
        value: name,accountnumber,emailaddress1
        type: query
        description: Comma-separated list of property names to include in the response. Use to limit the properties returned
          and improve performance.
      - name: $filter
        value: statecode eq 0
        type: query
        description: OData filter expression to restrict the set of records returned. Supports standard OData comparison,
          logical, and function operators.
      - name: $orderby
        value: name asc
        type: query
        description: Comma-separated list of properties to sort results by, each optionally followed by asc or desc.
      - name: $top
        value: '50'
        type: query
        description: Maximum number of records to return.
      - name: $skip
        value: ''
        type: query
        description: Number of records to skip before returning results.
      - name: $expand
        value: primarycontactid($select=fullname,emailaddress1)
        type: query
        description: Comma-separated list of navigation properties to expand inline in the response. Supports nested $select
          and $filter on expanded entities.
      - name: $count
        value: 'true'
        type: query
        description: Set to true to include a count of matching records in the response.
    docs: Retrieves a collection of account records from Dataverse. Supports OData query options for filtering, sorting, selecting
      fields, expanding navigation properties, and pagination.
  - info:
      name: Microsoft Power Apps Create a New Account
      type: http
    http:
      method: POST
      url: https://{organization}.api.crm.dynamics.com/api/data/v9.2/accounts
      headers:
      - name: Prefer
        value: return=representation,odata.include-annotations="*"
      body:
        type: json
        data: '{}'
    docs: Creates a new account record in Dataverse. Returns the created record when the Prefer header is set to return=representation.
  - info:
      name: Microsoft Power Apps Retrieve a Single Account
      type: http
    http:
      method: GET
      url: https://{organization}.api.crm.dynamics.com/api/data/v9.2/accounts(:accountid)
      headers:
      - name: Prefer
        value: return=representation,odata.include-annotations="*"
      params:
      - name: accountid
        value: ''
        type: path
        description: Unique identifier (GUID) of the account record.
      - name: $select
        value: name,accountnumber,emailaddress1
        type: query
        description: Comma-separated list of property names to include in the response. Use to limit the properties returned
          and improve performance.
      - name: $expand
        value: primarycontactid($select=fullname,emailaddress1)
        type: query
        description: Comma-separated list of navigation properties to expand inline in the response. Supports nested $select
          and $filter on expanded entities.
    docs: Retrieves a single account record by its unique identifier.
  - info:
      name: Microsoft Power Apps Update an Existing Account
      type: http
    http:
      method: PATCH
      url: https://{organization}.api.crm.dynamics.com/api/data/v9.2/accounts(:accountid)
      headers:
      - name: If-Match
        value: ''
      - name: Prefer
        value: return=representation,odata.include-annotations="*"
      params:
      - name: accountid
        value: ''
        type: path
        description: Unique identifier (GUID) of the account record.
      body:
        type: json
        data: '{}'
    docs: Updates an existing account record using PATCH (merge update). Only the properties included in the request body
      are updated. This follows the OData v4.0 convention for updates.
  - info:
      name: Microsoft Power Apps Delete an Account
      type: http
    http:
      method: DELETE
      url: https://{organization}.api.crm.dynamics.com/api/data/v9.2/accounts(:accountid)
      params:
      - name: accountid
        value: ''
        type: path
        description: Unique identifier (GUID) of the account record.
    docs: Deletes an existing account record from Dataverse.
- info:
    name: Contacts
    type: folder
  items:
  - info:
      name: Microsoft Power Apps Retrieve Multiple Contacts
      type: http
    http:
      method: GET
      url: https://{organization}.api.crm.dynamics.com/api/data/v9.2/contacts
      headers:
      - name: Prefer
        value: return=representation,odata.include-annotations="*"
      params:
      - name: $select
        value: name,accountnumber,emailaddress1
        type: query
        description: Comma-separated list of property names to include in the response. Use to limit the properties returned
          and improve performance.
      - name: $filter
        value: statecode eq 0
        type: query
        description: OData filter expression to restrict the set of records returned. Supports standard OData comparison,
          logical, and function operators.
      - name: $orderby
        value: name asc
        type: query
        description: Comma-separated list of properties to sort results by, each optionally followed by asc or desc.
      - name: $top
        value: '50'
        type: query
        description: Maximum number of records to return.
      - name: $skip
        value: ''
        type: query
        description: Number of records to skip before returning results.
      - name: $expand
        value: primarycontactid($select=fullname,emailaddress1)
        type: query
        description: Comma-separated list of navigation properties to expand inline in the response. Supports nested $select
          and $filter on expanded entities.
      - name: $count
        value: 'true'
        type: query
        description: Set to true to include a count of matching records in the response.
    docs: Retrieves a collection of contact records from Dataverse. Supports OData query options for filtering, sorting, selecting
      fields, expanding navigation properties, and pagination.
  - info:
      name: Microsoft Power Apps Create a New Contact
      type: http
    http:
      method: POST
      url: https://{organization}.api.crm.dynamics.com/api/data/v9.2/contacts
      headers:
      - name: Prefer
        value: return=representation,odata.include-annotations="*"
      body:
        type: json
        data: '{}'
    docs: Creates a new contact record in Dataverse. Returns the created record when the Prefer header is set to return=representation.
  - info:
      name: Microsoft Power Apps Retrieve a Single Contact
      type: http
    http:
      method: GET
      url: https://{organization}.api.crm.dynamics.com/api/data/v9.2/contacts(:contactid)
      headers:
      - name: Prefer
        value: return=representation,odata.include-annotations="*"
      params:
      - name: contactid
        value: ''
        type: path
        description: Unique identifier (GUID) of the contact record.
      - name: $select
        value: name,accountnumber,emailaddress1
        type: query
        description: Comma-separated list of property names to include in the response. Use to limit the properties returned
          and improve performance.
      - name: $expand
        value: primarycontactid($select=fullname,emailaddress1)
        type: query
        description: Comma-separated list of navigation properties to expand inline in the response. Supports nested $select
          and $filter on expanded entities.
    docs: Retrieves a single contact record by its unique identifier.
  - info:
      name: Microsoft Power Apps Update an Existing Contact
      type: http
    http:
      method: PATCH
      url: https://{organization}.api.crm.dynamics.com/api/data/v9.2/contacts(:contactid)
      headers:
      - name: If-Match
        value: ''
      - name: Prefer
        value: return=representation,odata.include-annotations="*"
      params:
      - name: contactid
        value: ''
        type: path
        description: Unique identifier (GUID) of the contact record.
      body:
        type: json
        data: '{}'
    docs: Updates an existing contact record using PATCH (merge update). Only the properties included in the request body
      are updated.
  - info:
      name: Microsoft Power Apps Delete a Contact
      type: http
    http:
      method: DELETE
      url: https://{organization}.api.crm.dynamics.com/api/data/v9.2/contacts(:contactid)
      params:
      - name: contactid
        value: ''
        type: path
        description: Unique identifier (GUID) of the contact record.
    docs: Deletes an existing contact record from Dataverse.
- info:
    name: Entities
    type: folder
  items:
  - info:
      name: Microsoft Power Apps Retrieve Entity Definitions
      type: http
    http:
      method: GET
      url: https://{organization}.api.crm.dynamics.com/api/data/v9.2/entities
      headers:
      - name: Prefer
        value: return=representation,odata.include-annotations="*"
      params:
      - name: $select
        value: name,accountnumber,emailaddress1
        type: query
        description: Comma-separated list of property names to include in the response. Use to limit the properties returned
          and improve performance.
      - name: $filter
        value: statecode eq 0
        type: query
        description: OData filter expression to restrict the set of records returned. Supports standard OData comparison,
          logical, and function operators.
      - name: $orderby
        value: name asc
        type: query
        description: Comma-separated list of properties to sort results by, each optionally followed by asc or desc.
      - name: $top
        value: '50'
        type: query
        description: Maximum number of records to return.
      - name: $skip
        value: ''
        type: query
        description: Number of records to skip before returning results.
      - name: $count
        value: 'true'
        type: query
        description: Set to true to include a count of matching records in the response.
    docs: Retrieves a collection of entity (table) definitions from Dataverse. This endpoint provides metadata about the tables
      available in the environment, including their logical names, collection names, and structural information. This is a
      read-only endpoint supporting only RetrieveMultiple operations.
  - info:
      name: Microsoft Power Apps Retrieve a Single Entity Definition
      type: http
    http:
      method: GET
      url: https://{organization}.api.crm.dynamics.com/api/data/v9.2/entities(:entityid)
      headers:
      - name: Prefer
        value: return=representation,odata.include-annotations="*"
      params:
      - name: entityid
        value: ''
        type: path
        description: Unique identifier (GUID) of the entity definition.
      - name: $select
        value: name,accountnumber,emailaddress1
        type: query
        description: Comma-separated list of property names to include in the response. Use to limit the properties returned
          and improve performance.
    docs: Retrieves a single entity (table) definition by its unique identifier. Provides metadata about the table including
      its logical name, collection name, and structural information.
bundled: true