Microsoft Entra ID (formerly Azure AD) Service Principals.endpoint API

The servicePrincipals.endpoint API from Microsoft Entra ID (formerly Azure AD) — 3 operation(s) for serviceprincipals.endpoint.

Operations 6

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /servicePrincipals/{servicePrincipal-id}/endpoints List a service principal's endpoints · Get endpoints from servicePrincipals #
Ask an LLM
“Which endpoints are registered on a given service principal?”
“Can I see the capabilities and URIs a service principal exposes?”
Tell an agent
List endpoints of service principal {sp}.
Show endpoints on service principal {sp} matching {filter}.
POST /servicePrincipals/{servicePrincipal-id}/endpoints Add an endpoint to a service principal · Create new navigation property to endpoints for servicePrincipals #
Ask an LLM
“How do I register a new endpoint URI on a service principal?”
“Can I record which provider and capability an endpoint belongs to?”
Tell an agent
Add endpoint {uri} with capability {capability} to service principal {sp}.
Create an endpoint for provider {provider} on service principal {sp}.
GET /servicePrincipals/{servicePrincipal-id}/endpoints/{endpoint-id} Get one service principal endpoint · Get endpoints from servicePrincipals #
Ask an LLM
“What URI and capability does a specific service principal endpoint have?”
“Which provider resource is a given endpoint tied to?”
Tell an agent
Show endpoint {endpoint} of service principal {sp}.
Get the URI of endpoint {endpoint} on {sp}.
PATCH /servicePrincipals/{servicePrincipal-id}/endpoints/{endpoint-id} Update a service principal endpoint · Update the navigation property endpoints in servicePrincipals #
Ask an LLM
“How do I change the URI of an existing service principal endpoint?”
“Can I update the capability recorded for an endpoint?”
Tell an agent
Set the URI of endpoint {endpoint} on service principal {sp} to {uri}.
Change the capability of endpoint {endpoint} on {sp} to {capability}.
DELETE /servicePrincipals/{servicePrincipal-id}/endpoints/{endpoint-id} Remove an endpoint from a service principal · Delete navigation property endpoints for servicePrincipals #
Ask an LLM
“How do I delete an endpoint from a service principal?”
“Can I remove a stale endpoint URI from an app's service principal?”
Tell an agent destructive · confirm first
Delete endpoint {endpoint} from service principal {sp}.
Remove stale endpoint {endpoint} on {sp}.
GET /servicePrincipals/{servicePrincipal-id}/endpoints/$count Count a service principal's endpoints · Get the number of the resource #
Ask an LLM
“How many endpoints does a given service principal have?”
“Does this service principal have any endpoints registered?”
Tell an agent
Count endpoints on service principal {sp}.
Tell me how many endpoints {sp} exposes.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/azure-ad:azure-ad-serviceprincipals-endpoint-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

azure-ad-serviceprincipals-endpoint-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Applications Service Principals.endpoint API
  version: v1.0
servers:
- url: https://graph.microsoft.com/v1.0/
  description: Core
security:
- azureaadv2: []
tags:
- name: servicePrincipals.endpoint
paths:
  /servicePrincipals/{servicePrincipal-id}/endpoints:
    get:
      tags:
      - servicePrincipals.endpoint
      summary: Get endpoints from servicePrincipals
      operationId: servicePrincipal_ListEndpoint
      parameters:
      - name: servicePrincipal-id
        in: path
        description: The unique identifier of servicePrincipal
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: servicePrincipal
      - $ref: '#/components/parameters/top'
      - $ref: '#/components/parameters/skip'
      - $ref: '#/components/parameters/search'
      - $ref: '#/components/parameters/filter'
      - $ref: '#/components/parameters/count'
      - name: $orderby
        in: query
        description: Order items by property values
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      - name: $select
        in: query
        description: Select properties to be returned
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      - name: $expand
        in: query
        description: Expand related entities
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      responses:
        2XX:
          $ref: '#/components/responses/microsoft.graph.endpointCollectionResponse'
        default:
          $ref: '#/components/responses/error'
      x-ms-pageable:
        nextLinkName: '@odata.nextLink'
        operationName: listMore
      x-ms-docs-operation-type: operation
    post:
      tags:
      - servicePrincipals.endpoint
      summary: Create new navigation property to endpoints for servicePrincipals
      operationId: servicePrincipal_CreateEndpoint
      parameters:
      - name: servicePrincipal-id
        in: path
        description: The unique identifier of servicePrincipal
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: servicePrincipal
      requestBody:
        description: New navigation property
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/microsoft.graph.endpoint'
        required: true
      responses:
        2XX:
          description: Created navigation property.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/microsoft.graph.endpoint'
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
  /servicePrincipals/{servicePrincipal-id}/endpoints/{endpoint-id}:
    get:
      tags:
      - servicePrincipals.endpoint
      summary: Get endpoints from servicePrincipals
      operationId: servicePrincipal_GetEndpoint
      parameters:
      - name: servicePrincipal-id
        in: path
        description: The unique identifier of servicePrincipal
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: servicePrincipal
      - name: endpoint-id
        in: path
        description: The unique identifier of endpoint
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: endpoint
      - name: $select
        in: query
        description: Select properties to be returned
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      - name: $expand
        in: query
        description: Expand related entities
        style: form
        explode: false
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      responses:
        2XX:
          description: Retrieved navigation property
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/microsoft.graph.endpoint'
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
    patch:
      tags:
      - servicePrincipals.endpoint
      summary: Update the navigation property endpoints in servicePrincipals
      operationId: servicePrincipal_UpdateEndpoint
      parameters:
      - name: servicePrincipal-id
        in: path
        description: The unique identifier of servicePrincipal
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: servicePrincipal
      - name: endpoint-id
        in: path
        description: The unique identifier of endpoint
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: endpoint
      requestBody:
        description: New navigation property values
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/microsoft.graph.endpoint'
        required: true
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/microsoft.graph.endpoint'
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
    delete:
      tags:
      - servicePrincipals.endpoint
      summary: Delete navigation property endpoints for servicePrincipals
      operationId: servicePrincipal_DeleteEndpoint
      parameters:
      - name: servicePrincipal-id
        in: path
        description: The unique identifier of servicePrincipal
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: servicePrincipal
      - name: endpoint-id
        in: path
        description: The unique identifier of endpoint
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: endpoint
      - name: If-Match
        in: header
        description: ETag
        style: simple
        schema:
          type: string
      responses:
        2XX:
          description: Success
        default:
          $ref: '#/components/responses/error'
      x-ms-docs-operation-type: operation
  /servicePrincipals/{servicePrincipal-id}/endpoints/$count:
    get:
      tags:
      - servicePrincipals.endpoint
      summary: Get the number of the resource
      operationId: servicePrincipal.endpoint_GetCount
      parameters:
      - name: servicePrincipal-id
        in: path
        description: The unique identifier of servicePrincipal
        required: true
        style: simple
        schema:
          type: string
        x-ms-docs-key-type: servicePrincipal
      - $ref: '#/components/parameters/search'
      - $ref: '#/components/parameters/filter'
      responses:
        2XX:
          $ref: '#/components/responses/ODataCountResponse'
        default:
          $ref: '#/components/responses/error'
components:
  responses:
    error:
      description: error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/microsoft.graph.ODataErrors.ODataError'
    ODataCountResponse:
      description: The count of the resource
      content:
        text/plain:
          schema:
            $ref: '#/components/schemas/ODataCountResponse'
    microsoft.graph.endpointCollectionResponse:
      description: Retrieved collection
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/microsoft.graph.endpointCollectionResponse'
  schemas:
    microsoft.graph.entity:
      title: entity
      type: object
      properties:
        id:
          type: string
          description: The unique identifier for an entity. Read-only.
      additionalProperties:
        type: object
    microsoft.graph.ODataErrors.InnerError:
      type: object
      additionalProperties:
        type: object
      description: The structure of this object is service-specific
    microsoft.graph.directoryObject:
      allOf:
      - $ref: '#/components/schemas/microsoft.graph.entity'
      - title: directoryObject
        type: object
        properties:
          deletedDateTime:
            pattern: ^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$
            type:
            - string
            - 'null'
            description: Date and time when this object was deleted. Always null when the object hasn't been deleted.
            format: date-time
        additionalProperties:
          type: object
    microsoft.graph.endpointCollectionResponse:
      title: Collection of endpoint
      type: object
      properties:
        value:
          type: array
          items:
            $ref: '#/components/schemas/microsoft.graph.endpoint'
        '@odata.nextLink':
          type:
          - string
          - 'null'
      additionalProperties:
        type: object
    microsoft.graph.ODataErrors.ODataError:
      required:
      - error
      type: object
      properties:
        error:
          $ref: '#/components/schemas/microsoft.graph.ODataErrors.MainError'
      additionalProperties:
        type: object
    microsoft.graph.ODataErrors.MainError:
      required:
      - code
      - message
      type: object
      properties:
        code:
          type: string
        message:
          type: string
          x-ms-primary-error-message: true
        target:
          type:
          - string
          - 'null'
        details:
          type: array
          items:
            $ref: '#/components/schemas/microsoft.graph.ODataErrors.ErrorDetails'
        innerError:
          $ref: '#/components/schemas/microsoft.graph.ODataErrors.InnerError'
      additionalProperties:
        type: object
    ODataCountResponse:
      type: integer
      format: int32
    microsoft.graph.endpoint:
      allOf:
      - $ref: '#/components/schemas/microsoft.graph.directoryObject'
      - title: endpoint
        type: object
        properties:
          capability:
            type: string
          providerId:
            type:
            - string
            - 'null'
          providerName:
            type:
            - string
            - 'null'
          providerResourceId:
            type:
            - string
            - 'null'
          uri:
            type: string
        additionalProperties:
          type: object
    microsoft.graph.ODataErrors.ErrorDetails:
      required:
      - code
      - message
      type: object
      properties:
        code:
          type: string
        message:
          type: string
        target:
          type:
          - string
          - 'null'
      additionalProperties:
        type: object
  parameters:
    count:
      name: $count
      in: query
      description: Include count of items
      style: form
      explode: false
      schema:
        type: boolean
    search:
      name: $search
      in: query
      description: Search items by search phrases
      style: form
      explode: false
      schema:
        type: string
    top:
      name: $top
      in: query
      description: Show only the first n items
      style: form
      explode: false
      schema:
        minimum: 0
        type: integer
      example: 50
    skip:
      name: $skip
      in: query
      description: Skip the first n items
      style: form
      explode: false
      schema:
        minimum: 0
        type: integer
    filter:
      name: $filter
      in: query
      description: Filter items by property values
      style: form
      explode: false
      schema:
        type: string
  securitySchemes:
    azureaadv2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://login.microsoftonline.com/common/oauth2/v2.0/authorize
          tokenUrl: https://login.microsoftonline.com/common/oauth2/v2.0/token
          scopes: {}