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
Core API for managing Power Apps applications, including creating, updating, and deleting apps.
RESTful API for interacting with Microsoft Dataverse (formerly Common Data Service) for data storage and management.
API for administrative tasks including environment management, app sharing, and user permissions.
API for working with custom and standard connectors to integrate external services and data sources.
API specific to Canvas Apps for creating pixel-perfect user interfaces with drag-and-drop functionality.
API for Model-driven Apps that automatically generate UI based on data model and business logic.
Framework API for professional developers to create reusable code components for model-driven and canvas apps using TypeScript and web technologies.
Unified RESTful API for Power Platform administration including environment management, governance, licensing, app management, and capacity reporting.
Web API for Power Pages (formerly Power Apps Portals) enabling CRUD operations on Dataverse tables from external-facing portal web pages.
.NET SDK providing strongly-typed access to Microsoft Dataverse through the IOrganizationService interface for server-side development and plugins.
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.
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.
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.
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.
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