Registrera och använda anpassade anslutningsappar i PowerAppsRegister and use custom connectors in PowerApps

Med PowerApps kan du skapa kompletta appar utan traditionell programkod.PowerApps enables you to build full-featured apps with no traditional application code. I vissa fall behöver du dock utöka PowerApps-funktionerna och webbtjänster är perfekt för det ändamålet.But in some cases you need to extend PowerApps capabilites, and web services are a natual fit for this. Din app kan ansluta till en tjänst, utföra åtgärder och får tillbaka data.Your app can connect to a service, perform operations, and get data back. När du har en webbtjänst som du vill ansluta till med PowerApps ska du registrera tjänsten som en anpassad anslutningsapp.When you have a web service you want to connect to with PowerApps, you register the service as a custom connector. Det får PowerApps att förstå egenskaperna hos ditt webb-API, bland annat den autentisering som krävs, de åtgärder som stöds samt parametrar och utdata för var och en av dessa åtgärder.This process enables PowerApps to understand the characteristics of your web API, including the authentication that it requires, the operations that it supports, and the parameters and outputs for each of those operations.

I det här avsnittet tittar vi på de steg som krävs för att registrera och använda en anpassad anslutningsapp och vi ska använda Azure Cognitive Services Text Analytics API som exempel.In this topic, we'll look at the steps required to register and use a custom connector, and we'll use the Azure Cognitive Services Text Analytics API as an example. Detta API identifierar språk, sentiment och nyckelfraser i text som du skickar till det.This API identifies the language, sentiment, and key phrases in text that you pass to it. Följande bild visar samverkan mellan tjänsten, den anpassade anslutningsapp vi skapar från den och den app som anropar API:t.The following image shows the interaction between the service, the custom connector we create from it, and the app that calls the API.

API, anpassad anslutningsapp och app

FörutsättningarPrerequisites

  • Ett PowerApps-konto.A PowerApps account.
  • En OpenAPI-fil i JSON-format, en URL till en OpenAPI-definition eller en Postman-samling för ditt API.An OpenAPI file in JSON format, a URL to an OpenAPI definition, or a Postman Collection for your API. Om du inte har något av detta kommer vi att vägleda dig.If you don't have any of these, we'll provide guidance for you.
  • En bild som används som en ikon för din anpassade anslutningsapp (valfritt).An image to use as an icon for your custom connector (optional).

Steg i processen för anpassad anslutningsappSteps in the custom connector process

Processen för anpassad anslutningsapp har flera steg som beskrivs kortfattat nedan.The custom connector process has several steps, which we describe briefly below. Den här artikeln förutsätter att du redan har ett RESTful-API med någon typ av autentiserad åtkomst, så vi kommer att fokusera på steg 3–6 i resten av artikeln.This article assumes you already have a RESTful API with some type of authenticated access, so we'll focus on steps 3-6 in the rest of the article. Ett exempel på steg 1 och 2 finns i Skapa ett anpassat webb-API för PowerApps.For an example of steps 1 and 2, see Create a custom Web API for PowerApps.

  1. Skapa ett RESTful-API på valfritt språk och valfri plattform.Build a RESTful API in the language and platform of your choice. För Microsoft-teknik rekommenderar vi ett av följande alternativ.For Microsoft technologies, we recommend one of the following.

    • Azure FunctionsAzure Functions
    • Azure Web AppsAzure Web Apps
    • Azure API AppsAzure API Apps
  2. Skydda ditt API med någon av följande autentiseringsmekanismer.Secure your API using one of the following authentication mechanisms. Du kan tillåta ej autentiserad åtkomst till dina API:er, men det rekommenderas inte.You can allow unauthenticated access to your APIs, but we don't recommend it.

  3. Beskriv ditt API på ett av två sätt enligt branschstandard, så att PowerApps kan ansluta till det.Describe your API in one of two industry-standard ways, so that PowerApps can connect to it.

    • En OpenAPI-fil (även kallad en Swagger)An OpenAPI file (also known as a Swagger file)
    • En Postman-samlingA Postman Collection

      Du kan också skapa en OpenAPI-fil i steg 4 som en del av registreringsprocessen.You can also build an OpenAPI file in step 4 as part of the registration process.

  4. Registrera din anpassade anslutningsapp med hjälp av en guide i PowerApps, där du anger en API-beskrivning, säkerhetsuppgifter och annan information.Register your custom connector using a wizard in PowerApps, where you specify an API description, security details, and other information.
  5. Använd din anpassade anslutningsapp i en app.Use your custom connector in an app. Skapa en anslutning till API:t i din app och anropa åtgärder som API:t tillhandahåller, precis som du anropar ursprungliga funktioner i PowerApps.Create a connection to the API in your app, and call any operations that the API provides, just like you call native functions in PowerApps.
  6. Dela din anpassade anslutningsapp precis som andra dataanslutningar i PowerApps.Share your custom connector like you do other data connections in PowerApps. Det här steget är valfritt, men ofta är det bra att dela anpassade anslutningsappar på flera appskapare.This step is optional, but it often makes sense to share custom connectors across multiple app creators.

Beskriv ditt APIDescribe your API

Om du har ett API med någon typ av autentiserad åtkomst behöver du ett sätt att beskriva API:t så att PowerApps kan ansluta till det.Assuming you have an API with some type of authenticated access, you need a way to describe the API so that PowerApps can connect to it. Då måste du skapa en OpenAPI-fil eller en Postman-samling, vilket du kan göra från alla REST API-slutpunkter, inklusive:To do this, you create an OpenAPI file or a Postman Collection – which you can do from any REST API endpoint, including:

  • Allmänt tillgängliga API:er.Publicly available APIs. Några exempel omfattar Spotify, Uber, Slack, Rackspace med mera.Some examples include Spotify, Uber, Slack, Rackspace, and more.
  • Ett API som du skapar och distribuerar till alla molnvärdleverantörer, inklusive Azure, Amazon Web Services (AWS), Heroku, Google Cloud med mera.An API that you create and deploy to any cloud hosting provider, including Azure, Amazon Web Services (AWS), Heroku, Google Cloud, and more.
  • En anpassad API för din verksamhet som distribueras på ditt nätverk så länge som ditt API är exponerat på internet.A custom line-of-business API deployed on your network as long as the API is exposed on the public internet.

OpenAPI-filer och Postman-samlingar använder olika format, men båda är språk-oberoende maskinläsbara dokument som beskriver ditt API:s åtgärder och parametrar:OpenAPI files and Postman Collections use different formats, but both are language-agnostic machine-readable documents that describe your API's operations and parameters:

  • Du kan skapa dessa dokument med olika verktyg, beroende på det språk och den plattform som ditt API bygger på.You can generate these documents using a variety of tools depending on the language and platform that your API is built on. I Text Analytics API-dokumentationen finns ett exempel på en OpenAPI-fil.See the Text Analytics API documentation for an example of an OpenAPI file.
  • Om du inte redan har en OpenAPI-fil för ditt API och inte vill skapa en kan du fortfarande enkelt skapa en anpassad anslutningsapp med hjälp av en Postman-samling.If you don't already have an OpenAPI file for your API and don't want to create one, you can still easily create a custom connector by using a Postman Collection. Mer information finns i Skapa en Postman-samling.See Create a Postman Collection for more information.
  • I slutänden använder PowerApps OpenAPI i bakgrunden, så en Postman-samling parsas och översätts till en OpenAPI-definitionsfil.PowerApps ultimately uses OpenAPI behind the scenes, so a Postman Collection is parsed and translated into an OpenAPI definition file.

Observera: Filstorleken måste vara mindre än 1 MB.Note: Your file size must be less than 1MB.

Komma igång med OpenAPI och PostmanGetting started with OpenAPI and Postman

Registrera din anpassade anslutningsappRegister your custom connector

Du kommer nu att använda OpenAPI-filen eller Postman-samlingen för att registrera din anpassade anslutningsapp i PowerApps.You will now use the OpenAPI file or Postman Collection to register your custom connector in PowerApps.

  1. I den vänstra menyn på powerapps.com klickar du på Anslutningar.In powerapps.com, in the left menu, select Connections. Välj knappen med tre punkter (...) och välj sedan Hantera anpassade anslutningsappar i det övre högra hörnet.Select the ellipsis (...), then select Manage custom connectors in the upper right corner.

    Tips: Om du inte hittar var du hanterar anpassade anslutningsappar i en mobil webbläsare kan det vara under en meny i det övre vänstra hörnet.Tip: If you can't find where to manage custom connectors in a mobile browser, it might be under a menu in the upper left corner.

    Skapa en anpassad anslutningsapp

  2. Välj Skapa anpassad anslutningsapp.Select Create custom connector.

    Egenskaper för anpassad anslutningsapp

  3. Välj hur du vill skapa den anpassade anslutningsappen på fliken Allmänt.In the General tab, choose how you want to create the custom connector.

    • Överföra en OpenAPI-filUpload an OpenAPI file
    • Använda en OpenAPI-URLUse an OpenAPI URL
    • Överföra en Postman-samling V1Upload Postman Collection V1

      Så här skapar du en anpassad anslutningsapp

      Överför en ikon för din anpassade anslutningsapp.Upload an icon for your custom connector. Fälten Beskrivning, Värd och Bas-URL fylls vanligtvis i automatiskt med information från OpenAPI-filen.Description, Host, and Base URL fields are typically auto-populated with the information from the OpenAPI file. Om de inte fylls i automatiskt kan du lägga till information till dessa fält.If they are not auto-populated, you can add information to those fields. Välj Fortsätt.Select Continue.

  4. Ange egenskaper för autentisering på fliken Säkerhet.In the Security tab, enter any authentication properties.

    Autentiseringstyper

    • Autentiseringstypen fylls i automatiskt baserat på vad som har definierats i OpenAPI securityDefinitions-objektet.The authentication type is auto-populated based on what is defined in your OpenAPI securityDefinitions object. Nedan visas ett exempel på OAuth2.0.Below is an OAuth2.0 example.

      "securityDefinitions": {
          "AAD": {
          "type": "oauth2",
          "flow": "accessCode",
          "authorizationUrl": "https://login.windows.net/common/oauth2/authorize",
          "scopes": {}
          }
      },
      
    • Om OpenAPI-filen inte använder objektet securityDefintions behövs inga ytterligare värden.If the OpenAPI file does not use the securityDefintions object, then no additional values are needed.
    • När du använder en Postman-samling fylls autentiseringstyp endast i automatiskt när du använder autentiseringstyper som stöds, till exempel OAuth 2.0 eller Basic.When using a Postman Collection, authentication type is auto-populated only when using supported authentication types, such as OAuth 2.0 or Basic.
    • Exempel på hur du konfigurerar autentisering med Azure Active Directory (AAD) finns i Skapa ett anpassat webb-API för PowerApps.For an example of setting up Azure Active Directory (AAD) authenthication, see Create a custom Web API for PowerApps.
  5. På fliken Definitioner fylls alla åtgärder som definierats i din OpenAPI-fil eller Postman-samling, tillsammans med begäran- och svarsvärden, i automatiskt.In the Definitions tab, all the operations defined in your OpenAPI file or Postman Collection, along with request and response values, are auto-populated. Om alla nödvändiga åtgärder har definierats kan gå du till steg 6 i registreringsprocessen utan att göra några ändringar på den här skärmen.If all your required operations are defined, you can go to step 6 in the registration process without making changes on this screen.

    Fliken Definition

    Om du vill redigera befintliga åtgärder eller lägga till nya åtgärder till en anpassad anslutningsapp ska du fortsätta att läsa nedan.If you want to edit existing actions or add new actions to your custom connector, continue reading below.

    1. Om du vill lägga till en ny åtgärd som inte redan finns i din OpenAPI-fil eller Postman-samling ska du välja Ny åtgärd i det vänstra fönstret och fylla i avsnittet Allmänt med namn, beskrivning och synlighet för åtgärden.If you want to add a new action that was not already in your OpenAPI file or Postman Collection, select New action in the left pane and fill in the General section with the name, description, and visibility of your operation.
    2. I avsnittet Förfrågan väljer du Importera från exempel längst upp till höger.In the Request section, select Import from sample on the top right. Klistra in en exempelförfrågan i formuläret till höger.In the form on the right, paste in a sample request. Exempelförfrågan finns vanligtvis i API-dokumentationen, där du kan hämta information för att fylla i fälten Verb, Fråge-URL, Rubriker och Brödtext.Sample requests are usually available in the API documentation, where you can get information to fill out the Verb, Request URL, Headers, and Body fields. Ett exempel visas i Text Analytics API-dokumentationen.See the Text Analytics API documentation for an example.

      Importera från exempel

    3. Välj Importera för att slutföra definitionen av förfrågan.Select Import to complete the request definition. Definiera svaret på ett liknande sätt.Define the response in a similar way.
  6. När du har definierat alla åtgärder väljer du Skapa för att skapa din anpassade anslutningsapp.Once you have all your operations defined, select Create to create your custom connector.
  7. När du har skapat en anpassad anslutningsapp går du till fliken Testa för att testa de åtgärder som definierades i API:t.Once you have created your custom connector, go to the Test tab to test the operations defined in the API. Välj en anslutning och ange indataparametrar för att testa en åtgärd.Choose a connection, and provide input parameters to test an operation.

    Testa anpassad anslutningsapp

    Om anropet lyckas får du ett giltigt svar.If the call is successful, you get a valid response.

    Testa API-svar

Använda en anpassad anslutningsappUse your custom connector

Nu när du har registrerat ditt API lägger du till den anpassade anslutningsappen i din app på samma sätt som för andra datakällor.Now that you've registered your API, add the custom connector to your app like you would any other data source. Vi kommer att gå igenom ett kort exempel.We'll go through a brief example here. Mer information om dataanslutningar finns i Lägga till en dataanslutning i PowerApps.For more information about data connections, see Add a data connection in PowerApps.

  1. Klicka eller tryck på Lägg till datakälla i det högra fönstret i PowerApps Studio.In PowerApps Studio, in the right pane, click or tap Add data source.

  2. Klicka eller tryck på den anpassade anslutningsappen som du har skapat.Click or tap the custom connector that you created.

  3. Slutför alla steg som krävs för att logga in på tjänsten som du vill ansluta till.Complete any steps necessary to sign in to the service you're connecting to. Om ditt API använder OAuth-autentisering visas eventuellt en inloggningsskärm.If your API uses OAuth authentication, you might be presented a sign-in screen. För autentisering med API-nyckel kan du uppmanas att ange ett nyckelvärde.For API key authentication, you might be prompted for a key value.
  4. Anropa API:t i din app.Call the API in your app. I vårt exempel skapade vi en app som skickar text till Cognitive Services och får tillbaka ett sentimentresultat på 0 till 1, som appen visar i procent.For our example, we created an app that submits text to Cognitive Services and gets back a sentiment score of 0 to 1, which the app shows as a percentage.

    • Om du börjar skriva ”Az” i formelfältet med den här anslutningsappen visas API:t och vilka åtgärder som är tillgängliga.With this connector, if you start typing "Az" in the formula bar, you see the API and the operations that it makes available.

    • Det fullständiga anropet ser ut så här, där vi skickar in text från kontrollen TextInput och får tillbaka ett resultat som visas i appen:The complete call looks like this, where we pass in text from the TextInput control and get back a score to display in the app:

      'AzureMachineLearning-TextAnalytics'.Sentiment({documents:Table({language:"en",id:"1",text:TextInput.Text})}).documents.score)
      
    • Vi arbetar lite mer i programmet för att hantera de data som kommer tillbaka, men det är inte så komplicerat.We do a little more work in the app to handle the data that comes back, but it's not too complicated.

Den färdiga appen ser ut som på följande bild.The finished app looks like the following image. Det är en enkel app, men den får kraftfulla funktioner genom att anropa Cognitive Services via en anpassad anslutningsapp.It's a simple app, but it gains powerful functionality by being able to call Cognitive Services through a custom connector.

Kvot och begränsningQuota and throttling

  • Se sidan PowerApps-priser för information om kvoter för anpassade anslutningsappar.See the PowerApps Pricing page for details about custom connector creation quotas. Anpassade anslutningsappar som delas med dig räknas inte mot kvoten.Custom connectors that are shared with you don't count against this quota.
  • Användare kan göra upp till 500 anrop per minut för varje anslutning som skapats på en anpassad anslutningsapp.For each connection created on a custom connector, users can make up to 500 requests per minute.

Dela din anpassade anslutningsappShare your custom connector

Nu när du har en anpassad anslutningsapp kan du dela den med andra användare i din organisation.Now that you have a custom connector, you can share it with other users in your organization. Tänk på att när du delar en anslutningsapp kan andra börja bli beroende av den och om du tar bort en anpassad anslutningsapp tas alla anslutningar till API:t bort.Keep in mind that when you share an API, others might start to depend on it, and deleting a custom connector deletes all the connections to the API. Om du vill skapa en anslutningsapp för användare utanför organisationen finns information i Översikt över certifiering av anpassade anslutningsappar i PowerApps.If you want to provide a connector for users outside your organization, see Overview of certifying custom connectors in PowerApps.

  1. I den vänstra menyn på powerapps.com klickar du på Anslutningar.In powerapps.com, in the left menu, select Connections. Välj knappen med tre punkter (...) och välj sedan Hantera anpassade anslutningsappar i det övre högra hörnet.Select the ellipsis (...), then select Manage custom connectors in the upper right corner.

    Ny anslutning

  2. Välj knappen med tre punkter (...) för din anslutningsapp och välj sedan Visa egenskaper.Select the ellipsis (. . .) button for your connector, then select View properties.

    Visa anslutningsappens egenskaper

  3. Välj ditt API, välj Dela och ange sedan de användare eller grupper som du vill bevilja åtkomst till ditt API.Select your API, select Share, and then enter the users or groups to whom you want to grant access to your API.

    Dela anpassad anslutningsapp

  4. Välj Spara.Select Save.

Nästa stegNext steps

Lär dig hur du skapar en Postman-samlingLearn how to create a Postman Collection

Använd ett ASP.NET Web API.Use an ASP.NET Web API.

Registrera ett Azure Resource Manager API.Register an Azure Resource Manager API.