Digital Realty API

Digital Realty API as documented publicly: 7 operations. Contract generated from the documentation by API Evangelist (2026-10-14); not the provider's own document.

Operations 7

GET /v1/facility-access/access-tickets/{ticketid} Retrieve Permanent Badge Details #
PUT /v1/facility-access/access-tickets/{workorderid} PUT /v1/facility-access/access-tickets/{workorderid} #
GET /v1/facility-access/pop-poes/{poppoeid} GET /v1/facility-access/pop-poes/access-requests #
GET /v1/facility-access/{facilityacceid} GET /v1/facility-access/access-tickets #
GET /v1/remotehands-tickets GET /v1/remotehands-tickets #
GET /v1/remotehands-tickets/categories GET /v1/remotehands-tickets/categories #
POST /v2/auth/token POST /v2/auth/token #

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/digital-realty:digital-realty-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

digital-realty-openapi-generated.yml Raw ↑
openapi: 3.1.0
info:
  title: Digital Realty API
  version: '2026-10-14'
  description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-10-14: 7 operation(s) read from 6 public documentation page(s) (each operation
    names its page in x-source). This is not the provider''s published contract; Digital Realty has published no machine-readable contract that
    the pipeline could find. Engine: local.'
  x-evidence-tiers:
    code-example: 11
    documentation: -4
    pages-with-code: 6
    pages-read: 6
  x-generated-from: documentation
  x-provenance: generated
  x-authored-by: API Evangelist
  x-generated: '2026-10-14'
  x-generator: generate-contract-from-docs.py
  x-engine: local
  x-sources:
  - https://developer.digitalrealty.com/docs/getting-started
  - https://developer.digitalrealty.com/api-catalog/accesstoken/how-guide
  - https://developer.digitalrealty.com/api-catalog/remotehandstickets/how-guide
  - https://developer.digitalrealty.com/api-catalog/facilityaccess/how-guide-visitors
  - https://developer.digitalrealty.com/api-catalog/facilityaccess/how-guide-badge
  - https://developer.digitalrealty.com/api-catalog/facilityaccess/how-guide-pop
servers:
- url: https://api.digitalrealty.com
paths:
  /v1/facility-access/access-tickets/{ticketid}:
    get:
      operationId: get_v1_facility_access_access_tickets_ticketid
      tags:
      - Facility Access
      summary: Retrieve Permanent Badge Details
      x-source: https://developer.digitalrealty.com/api-catalog/facilityaccess/how-guide-badge
      parameters:
      - name: ticketid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1FacilityAccessAccessTicketsTicketidResponse'
      x-evidence:
        kind: documentation
  /v1/facility-access/access-tickets/{workorderid}:
    put:
      operationId: put_v1_facility_access_access_tickets_workorderid
      tags:
      - Facility Access
      summary: PUT /v1/facility-access/access-tickets/{workorderid}
      x-source: https://developer.digitalrealty.com/api-catalog/facilityaccess/how-guide-visitors
      parameters:
      - name: workorderid
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PutV1FacilityAccessAccessTicketsWorkorderidRequest'
      responses:
        '200':
          description: Success (shape read from the example response on the page)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PutV1FacilityAccessAccessTicketsWorkorderidResponse'
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl --location --request PUT 'https://api.digitalrealty.com/v1/facility-access/access-tickets/<workOrderId>'  --header 'Master-Account-Id:\
          \ <Master-Account-Id>'  --header 'Account-Id: <Account-Id>'  --header 'Authorization: Bearer <access_token>'  --header 'Content-Type:\
          \ application/json'  --data-raw '{\n \"visitorPhone\":\"+918898805959\",\n \"emailNotifications\": \"test2@email.com,jane_doe@email.com\"\
          \n}'"
  /v1/facility-access/pop-poes/{poppoeid}:
    get:
      operationId: get_v1_facility_access_pop_poes_poppoeid
      tags:
      - Facility Access
      summary: GET /v1/facility-access/pop-poes/access-requests
      x-source: https://developer.digitalrealty.com/api-catalog/facilityaccess/how-guide-pop
      parameters:
      - name: poppoeid
        in: path
        required: true
        schema:
          type: string
      - name: site
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Success (shape read from the example response on the page)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1FacilityAccessPopPoesPoppoeidResponse'
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl --location --request GET 'https://api.digitalrealty.com/v1/facility-access/pop-poes/access-requests'  --header 'Master-Account-Id:\
          \ <Master-Account-Id>'  --header 'Account-Id: <Account-Id>'  --header 'Authorization: Bearer <access_token>'   \n Headers \n Field Name\
          \ \n Mandatory \n Type \n Description \n Master-Account-Id \n true \n string \n Customer master account identifier. \n Account-Id \n\
          \ true \n str"
        collapsed_from: 2 example path(s) differing only at poppoeId
  /v1/facility-access/{facilityacceid}:
    get:
      operationId: get_v1_facility_access_facilityacceid
      tags:
      - Facility Access
      summary: GET /v1/facility-access/access-tickets
      x-source: https://developer.digitalrealty.com/api-catalog/facilityaccess/how-guide-visitors
      parameters:
      - name: facilityacceid
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (shape read from the example response on the page)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1FacilityAccessFacilityacceidResponse'
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl --location --request GET 'https://api.digitalrealty.com/v1/facility-access/access-tickets/ < ticketId > '  --header 'Master-Account-Id:\
          \ < Master-Account-Id > '  --header 'Account-Id: < Account-Id > '  --header 'Authorization: Bearer < access_token > '   \n Headers \n\
          \ Field Name \n Mandatory \n Type \n Description \n Master-Account-Id \n true \n string \n Customer master account identifier. \n Account-I"
        collapsed_from: 3 example path(s) differing only at facilityacceId
  /v1/remotehands-tickets:
    get:
      operationId: get_v1_remotehands_tickets
      tags:
      - Remotehands Tickets
      summary: GET /v1/remotehands-tickets
      x-source: https://developer.digitalrealty.com/docs/getting-started
      responses:
        '200':
          description: Success (shape read from the example response on the page)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1RemotehandsTicketsResponse'
      x-evidence:
        kind: code-example
        language: curl
        snippet: 'curl --location --request GET ''https://playground.digitalrealty.com/v1/remotehands-tickets''  --header ''Master-Account-Id:
          <your_master_account_id>''  --header ''Account-Id: <your_account_id>''  --header ''Authorization: Bearer <your_access_token>'' We provide
          the curl command snippet above to this text. Replace < your_access_token>  with the  token  you got from the Get Access Token request
          you made ea'
  /v1/remotehands-tickets/categories:
    get:
      operationId: get_v1_remotehands_tickets_categories
      tags:
      - Remotehands Tickets
      summary: GET /v1/remotehands-tickets/categories
      x-source: https://developer.digitalrealty.com/api-catalog/remotehandstickets/how-guide
      responses:
        '200':
          description: Success (shape read from the example response on the page)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetV1RemotehandsTicketsCategoriesResponse'
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl --location --request GET 'https://api.digitalrealty.com/v1/remotehands-tickets/categories'  --header 'Master-Account-Id:\
          \ <Master-Account-Id>'  --header 'Account-Id: <Account-Id>'  --header 'Authorization: Bearer <access_token>'   \n Headers \n Field Name\
          \ \n Mandatory \n Type \n Description \n Master-Account-Id \n true \n string \n Customer master account identifier. \n Account-Id \n\
          \ true \n string \n Cust"
  /v2/auth/token:
    post:
      operationId: post_v2_auth_token
      tags:
      - Auth
      summary: POST /v2/auth/token
      x-source: https://developer.digitalrealty.com/docs/getting-started
      responses:
        '201':
          description: Success (shape read from the example response on the page)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostV2AuthTokenResponse'
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl --location --request POST 'https://playground.digitalrealty.com/v2/auth/token'  --header 'Content-Type: application/x-www-form-urlencoded'\
          \  --data-urlencode 'client_id=<your_client_id>'  --data-urlencode 'client_secret=<your_client_secret>'  --data-urlencode 'grant_type=client_credentials'\
          \ We also provide the curl command if you don't like using Postman. \nReplace <your_client_id> with your Cl"
components:
  schemas:
    GetV1FacilityAccessAccessTicketsTicketidResponse:
      type: object
      properties:
        ticketId:
          type: string
          description: Identifier of the ticket.
        ticketType:
          type: string
          description: The type of the ticket.
        ticketStatus:
          type: string
          description: Designates the stage of the ticket.
        requester:
          type: string
          description: Designates the user that initially generated the work order.
        ticketCreatedDate:
          type: string
          description: Date on which the work order was generated.
        ticketUpdatedDate:
          type: string
          description: Last date on which the work order details were modified.
        requestType:
          type: string
          description: Type of the facility access request.
        ticketCategory:
          type: string
          description: Category of the facility access request.
        contactFirstName:
          type: string
          description: First name of the contact.
        contactLastName:
          type: string
          description: Last name of the contact.
        contactEmail:
          type: string
          description: Contact’s email address.
        contactPhone:
          type: string
          description: Contact’s phone number.
        representingCompany:
          type: string
          description: Company representing.
        badgeStartDate:
          type: string
          description: Date of the badge activation.
        badgeEndDate:
          type: string
          description: Date of the badge expiration.
        site:
          type: array
          description: Array of site objects.
        modifiedBy:
          type: string
          description: Designates the user that modified the work order.
        emailNotifications:
          type: string
          description: Personnel's email addresses designated to be notified of the request.
        visitorType:
          type: string
          description: Indicates if visitors access is escorted.
        visitorBadgeType:
          type: string
          description: The Type of visitor badge.
        visitorHostFirstName:
          type: string
          description: First name of host.
        visitorHostLastName:
          type: string
          description: Last name of host.
        hostCompany:
          type: string
          description: Company hosting the visitor.
        notes:
          type: string
          description: Add additional information needed.
        contactType:
          type: string
          description: Short description of the visit.
        escortFirstName:
          type: string
          description: First name of person escorting visitor.
        escortLastName:
          type: string
          description: Last name of person escorting visitor.
        visitorBadgeStartDate:
          type: string
          description: Date the visitor access will begin.
        visitorBadgeEndDate:
          type: string
          description: Date the visitor access will end.
        customerExternalReference:
          type: string
          description: Customer external reference number.
        workDescription:
          type: string
          description: The Description of the work.
        description:
          type: string
          description: Short description of work order.
        bulkRequest:
          type: boolean
          description: Indicates if this is a request for more than four visitors.
    PutV1FacilityAccessAccessTicketsWorkorderidRequest:
      type: object
      properties:
        visitorPhone:
          type: string
        emailNotifications:
          type: string
    PutV1FacilityAccessAccessTicketsWorkorderidResponse:
      type: object
      properties:
        workOrderId:
          type: string
    GetV1FacilityAccessPopPoesPoppoeidResponse:
      type: object
      properties:
        content:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              title:
                type: string
              status:
                type: string
              site:
                type: string
              requestType:
                type: string
              category:
                type: string
              isBulkRequest:
                type: boolean
              createdOn:
                type: string
                format: date-time
              updatedOn:
                type: string
                format: date-time
              closedOn:
                type: string
              createdBy:
                type: string
              ticketType:
                type: string
              description:
                type: string
              location:
                type: string
        pageable:
          type: object
          properties:
            last:
              type: boolean
            totalPages:
              type: integer
            totalElements:
              type: integer
            size:
              type: integer
            number:
              type: integer
            first:
              type: boolean
            numberOfElements:
              type: integer
            empty:
              type: boolean
    GetV1FacilityAccessFacilityacceidResponse:
      type: object
      properties:
        ticketId:
          type: string
        ticketType:
          type: string
        ticketStatus:
          type: string
        requester:
          type: string
        ticketCreatedDate:
          type: string
          format: date-time
        ticketUpdatedDate:
          type: string
          format: date-time
        requestType:
          type: string
        ticketCategory:
          type: string
        contactFirstName:
          type: string
        contactLastName:
          type: string
        contactEmail:
          type: string
        contactPhone:
          type: string
        representingCompany:
          type: string
        badgeStartDate:
          type: string
          format: date
        badgeEndDate:
          type: string
          format: date
        site:
          type: array
          items:
            type: object
            properties:
              site:
                type: string
              locations:
                type: array
                items:
                  type: object
                  properties:
                    location:
                      type: string
              address:
                type: string
        modifiedBy:
          type: string
        emailNotifications:
          type: string
        visitorType:
          type: string
        visitorBadgeType:
          type: string
        visitorHostFirstName:
          type: string
        visitorHostLastName:
          type: string
        hostCompany:
          type: string
        notes:
          type: string
        contactType:
          type: string
        escortFirstName:
          type: string
        escortLastName:
          type: string
        visitorBadgeStartDate:
          type: string
          format: date
        visitorBadgeEndDate:
          type: string
          format: date
        customerExternalReference:
          type: string
        workDescription:
          type: string
        description:
          type: string
        bulkRequest:
          type: boolean
    GetV1RemotehandsTicketsResponse:
      type: object
      properties:
        content:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              title:
                type: string
              status:
                type: string
              site:
                type: string
              location:
                type: string
              requestType:
                type: string
              category:
                type: string
              createdOn:
                type: string
                format: date-time
              updatedOn:
                type: string
                format: date-time
              closedOn:
                type: string
              createdBy:
                type: string
        pageable:
          type: object
          properties:
            last:
              type: boolean
            totalPages:
              type: integer
            totalElements:
              type: integer
            size:
              type: integer
            number:
              type: integer
            numberOfElements:
              type: integer
            first:
              type: boolean
            empty:
              type: boolean
    GetV1RemotehandsTicketsCategoriesResponse:
      type: object
      properties:
        requestType:
          type: object
          properties:
            name:
              type: string
            categories:
              type: array
              items:
                type: object
                properties:
                  name:
                    type: string
    PostV2AuthTokenResponse:
      type: object
      properties:
        content:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              title:
                type: string
              status:
                type: string
              site:
                type: string
              location:
                type: string
              requestType:
                type: string
              category:
                type: string
              createdOn:
                type: string
                format: date-time
              updatedOn:
                type: string
                format: date-time
              closedOn:
                type: string
              createdBy:
                type: string
        pageable:
          type: object
          properties:
            last:
              type: boolean
            totalPages:
              type: integer
            totalElements:
              type: integer
            size:
              type: integer
            number:
              type: integer
            numberOfElements:
              type: integer
            first:
              type: boolean
            empty:
              type: boolean
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
security:
- bearer: []
tags:
- name: Auth
- name: Facility Access
- name: Remotehands Tickets