Yext Administrative API API

NOTE: You need a sandbox account to test your Administrative API integration. Contact your Account Manager to have one created for you.

OpenAPI Specification

yext-administrative-api-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Yext Admin Account Settings Administrative API API
  version: '2.0'
  description: 'NOTE: You need a sandbox account to test your Administrative API integration. Contact your Account Manager to have one created for you.'
servers:
- url: https://api.yextapis.com/v2
security:
- api_key: []
- api-key: []
tags:
- name: Administrative API
  description: 'NOTE: You need a sandbox account to test your Administrative API integration. Contact your Account Manager to have one created for you.'
paths:
  /accounts/{accountId}/availableservices:
    parameters:
    - $ref: '#/components/parameters/accountId'
    - $ref: '#/components/parameters/v'
    get:
      operationId: listAvailableServices
      tags:
      - Administrative API
      summary: 'Available Services: List'
      description: Return list of services available to you under your agreements
      responses:
        '200':
          $ref: '#/components/responses/AvailableServicesResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/newlocationaddrequests:
    parameters:
    - $ref: '#/components/parameters/accountId'
    - $ref: '#/components/parameters/v'
    post:
      operationId: createNewLocationAddRequest
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NewLocationAddRequest'
      tags:
      - Administrative API
      summary: 'Add Requests: Create (New Location)'
      description: 'Request that a new location be added and services added to it. The location is created only if the "status" field returned is "COMPLETE". In most cases, the "status" returned in the Add Request: Create response will be "SUBMITTED". For a list and explanation of each possible "status", please see the [**Add Requests: Get (Location)**](#operation/getAddRequest) section.


        To receive real-time updates on the status of your Add Request, we recommend that you configure the [**Add Request Update: Webhook**](../webhooks/index.html#operation/addRequestWebhook) in the Developer Console (see the [**Configure Webhooks**](http://developer.yext.com/docs/guides/configure-webhooks/) guide for more information). Alternatively, use the [**Add Requests: Get (Location)**](#operation/getAddRequest) call to determine the current Add Request "status".

        '
      responses:
        '200':
          $ref: '#/components/responses/NewLocationAddRequestsResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/existinglocationaddrequests:
    parameters:
    - $ref: '#/components/parameters/accountId'
    - $ref: '#/components/parameters/v'
    post:
      operationId: createExistingLocationAddRequest
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExistingLocationAddRequest'
      tags:
      - Administrative API
      summary: 'Add Requests: Create (Existing Location)'
      description: Request that one or more available services be added to an existing location.
      responses:
        '200':
          $ref: '#/components/responses/ExistingLocationAddRequestsResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/existingsubaccountaddrequests:
    parameters:
    - $ref: '#/components/parameters/accountId'
    - $ref: '#/components/parameters/v'
    post:
      operationId: createExistingSubAccountAddRequest
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExistingSubAccountAddRequest'
      tags:
      - Administrative API
      summary: 'Add Requests: Create (Existing Account)'
      description: Request that one or more available services be added (or increased in quantity) to an existing account.
      responses:
        '200':
          $ref: '#/components/responses/ExistingSubAccountAddRequestsResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/cancelservices:
    parameters:
    - name: accountId
      in: path
      required: true
      schema:
        type: string
      description: 'The ID of the account.


        **NOTE:** If you would like to cancel location services under a sub-account, enter the ID of the *main account* rather than the sub-account.

        '
    - $ref: '#/components/parameters/v'
    post:
      operationId: cancelServices
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CancelServicesRequest'
      tags:
      - Administrative API
      summary: 'Services: Cancel (Location)'
      description: 'Cancel one or more active services provisioned on the location.


        **NOTE:** If you have added location services under a sub-account, use this endpoint on your *main account* to cancel them.

        '
      responses:
        '200':
          $ref: '#/components/responses/CancelServicesResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/cancelsubaccountservices:
    parameters:
    - name: accountId
      in: path
      required: true
      schema:
        type: string
      description: 'The ID of the account.


        **NOTE:** Enter the ID of the *main account* rather than the sub-account to cancel services provisioned on the sub-account.

        '
    - $ref: '#/components/parameters/v'
    post:
      operationId: cancelSubAccountServices
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CancelSubAccountServicesRequest'
      tags:
      - Administrative API
      summary: 'Services: Cancel (Account)'
      description: 'Cancel (or decrease the quantity of) one or more active services provisioned on the account.


        **NOTE:** If you have added services to a sub-account, use this endpoint on your *main account* to cancel them.

        '
      responses:
        '200':
          $ref: '#/components/responses/CancelSubAccountServicesResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/cancelallsubaccountservices:
    parameters:
    - name: accountId
      in: path
      required: true
      schema:
        type: string
      description: 'The ID of the account.


        **NOTE:** Enter the ID of the *main account* rather than the sub-account to cancel all of the services provisioned on the sub-account.

        '
    - $ref: '#/components/parameters/v'
    post:
      operationId: cancelAllSubAccountServices
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CancelAllSubAccountServicesRequest'
      tags:
      - Administrative API
      summary: 'Services: Cancel All (Account)'
      description: 'Cancel all active services (all quantities) provisioned on the account.


        **NOTE:** If you have added services to a sub-account, use this endpoint on your *main account* to cancel all of them.

        '
      responses:
        '200':
          $ref: '#/components/responses/CancelAllSubAccountServicesResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/processaddrequest:
    parameters:
    - $ref: '#/components/parameters/accountId'
    - $ref: '#/components/parameters/v'
    post:
      operationId: createProcessReviewAddRequest
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProcessReviewAddRequest'
      tags:
      - Administrative API
      summary: 'Add Requests: Process (Sandbox API Only)'
      description: Request that an add request in REVIEW be processed to COMPLETE, CANCELED, or FAILED. Only applicable for location add requests.
      responses:
        '200':
          $ref: '#/components/responses/EmptyResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/addrequests:
    parameters:
    - $ref: '#/components/parameters/accountId'
    - $ref: '#/components/parameters/v'
    get:
      operationId: listAddRequests
      parameters:
      - name: status
        in: query
        schema:
          type: string
          enum:
          - SUBMITTED
          - PROCESSING
          - COMPLETE
          - CANCELED
          - REVIEW
          - FAILED
        description: Filters the list to add requests in a specific status.
      - name: submittedAfter
        in: query
        schema:
          type: string
          format: date
        description: (`YYYY-MM-DDThh:mm:ss` format)
      - name: submittedBefore
        in: query
        schema:
          type: string
          format: date
        description: (`YYYY-MM-DDThh:mm:ss` format)
      - name: updatedAfter
        in: query
        schema:
          type: string
          format: date
        description: (`YYYY-MM-DDThh:mm:ss` format)
      - name: updatedBefore
        in: query
        schema:
          type: string
          format: date
        description: (`YYYY-MM-DDThh:mm:ss` format)
      - name: sku
        in: query
        schema:
          type: string
      - name: agreementId
        in: query
        schema:
          type: integer
      - name: locationId
        in: query
        schema:
          type: string
      - name: limit
        in: query
        schema:
          type: integer
          maximum: 1000
          default: 100
      - $ref: '#/components/parameters/offset'
      tags:
      - Administrative API
      summary: 'Add Requests: List (Location)'
      description: "Get all of the add requests in the account that were created for locations. The response includes both New Location Add Requests and Existing Location Add Requests.\n\nPossible `status` values for each add request:\n  * SUBMITTED - The request has been submitted for processing. Updated status should be available soon, usually within seconds.\n  * PROCESSING - The request is currently being processed. Updated status should be available soon, usually within seconds.\n  * COMPLETE - The request was successfully processed and service was added. You can verify this by retrieving services for the location.\n  * CANCELED - The request was purposefully canceled by Yext and was not processed. Details are available in the *results* field.\n  * REVIEW - The request is being reviewed by Yext, most likely because this location may be a duplicate of another location already\n    receiving this service through Yext. Once the review is complete, *status* will be updated to either CANCELED or COMPLETE.\n  * FAILED - Processing the request failed due to a technical issue. Details may be available in the *statusDetail* field. No changes were made to your account, so you can\n    try the request again.\n"
      responses:
        '200':
          $ref: '#/components/responses/AddRequestsResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/addrequests/{addRequestId}:
    parameters:
    - $ref: '#/components/parameters/accountId'
    - name: addRequestId
      in: path
      schema:
        type: integer
      description: 'addRequestId returned from a previous call to **Add Requests: Create (New Location)**, **Add Requests: Create (Existing Location)**, or retrieved from **Add Requests: List (Location)**

        '
      required: true
    - $ref: '#/components/parameters/v'
    get:
      operationId: getAddRequest
      tags:
      - Administrative API
      summary: 'Add Requests: Get (Location)'
      description: "Get status information about an add request that was previously created for a location.\n\nPossible statuses:\n  * SUBMITTED - The request has been submitted for processing. Updated status should be available soon, usually within seconds.\n  * PROCESSING - The request is currently being processed. Updated status should be available soon, usually within seconds.\n  * COMPLETE - The request was successfully processed and service was added. You can verify this by retrieving services for the location.\n  * CANCELED - The request was purposefully canceled by Yext and was not processed. Details are available in the *results* field.\n  * REVIEW - The request is being reviewed by Yext, most likely because this location may be a duplicate of another location already\n    receiving this service through Yext. Once the review is complete, *status* will be updated to either CANCELED or COMPLETE.\n  * FAILED - Processing the request failed due to a technical issue. Details may be available in the *statusDetail* field. No changes were made to your account, so you can\n    try the request again.\n"
      responses:
        '200':
          $ref: '#/components/responses/AddRequestResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/subaccountaddrequests:
    parameters:
    - $ref: '#/components/parameters/accountId'
    - $ref: '#/components/parameters/v'
    get:
      operationId: listSubAccountAddRequests
      parameters:
      - name: status
        in: query
        schema:
          type: string
          enum:
          - SUBMITTED
          - PROCESSING
          - COMPLETE
          - CANCELED
          - FAILED
        description: Filters the list to add requests in a specific status.
      - name: submittedAfter
        in: query
        schema:
          type: string
          format: date
        description: (`YYYY-MM-DDThh:mm:ss` format)
      - name: submittedBefore
        in: query
        schema:
          type: string
          format: date
        description: (`YYYY-MM-DDThh:mm:ss` format)
      - name: updatedAfter
        in: query
        schema:
          type: string
          format: date
        description: (`YYYY-MM-DDThh:mm:ss` format)
      - name: updatedBefore
        in: query
        schema:
          type: string
          format: date
        description: (`YYYY-MM-DDThh:mm:ss` format)
      - name: sku
        in: query
        schema:
          type: string
      - name: agreementId
        in: query
        schema:
          type: integer
      - name: subAccountId
        in: query
        schema:
          type: string
      - name: limit
        in: query
        schema:
          type: integer
          maximum: 1000
          default: 100
      - $ref: '#/components/parameters/offset'
      tags:
      - Administrative API
      summary: 'Add Requests: List (Sub-Account)'
      description: "Get all of the add requests in the account that were created for sub-accounts.\n\nPossible `status` values for each add request:\n  * SUBMITTED - The request has been submitted for processing. Updated status should be available soon, usually within seconds.\n  * PROCESSING - The request is currently being processed. Updated status should be available soon, usually within seconds.\n  * COMPLETE - The request was successfully processed and service was added. You can verify this by retrieving services for the sub-account.\n  * CANCELED - The request was purposefully canceled by Yext and was not processed. Details are available in the *results* field.\n  * FAILED - Processing the request failed due to a technical issue. Details may be available in the *statusDetail* field. No changes were made to your account, so you can\n    try the request again.\n"
      responses:
        '200':
          $ref: '#/components/responses/SubAccountAddRequestsResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/subaccountaddrequests/{addRequestId}:
    parameters:
    - $ref: '#/components/parameters/accountId'
    - name: addRequestId
      in: path
      schema:
        type: integer
      description: 'addRequestId returned from a previous call to **Add Requests: Create (Existing Account)** or retrieved from **Add Requests: List (Sub-Account)**

        '
      required: true
    - $ref: '#/components/parameters/v'
    get:
      operationId: getSubAccountAddRequest
      tags:
      - Administrative API
      summary: 'Add Requests: Get (Sub-Account)'
      description: "Get status information about an add request that was previously created for a sub-account.\n\nPossible statuses:\n  * SUBMITTED - The request has been submitted for processing. Updated status should be available soon, usually within seconds.\n  * PROCESSING - The request is currently being processed. Updated status should be available soon, usually within seconds.\n  * COMPLETE - The request was successfully processed and service was added. You can verify this by retrieving services for the sub-account.\n  * CANCELED - The request was purposefully canceled by Yext and was not processed. Details are available in the *results* field.\n  * FAILED - Processing the request failed due to a technical issue. Details may be available in the *statusDetail* field. No changes were made to your account, so you can\n    try the request again.\n"
      responses:
        '200':
          $ref: '#/components/responses/SubAccountAddRequestResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/services:
    parameters:
    - name: accountId
      in: path
      required: true
      schema:
        type: string
      description: 'The ID of the account.


        **NOTE:** To retrieve information about services provisioned on a location under a sub-account, enter the ID of the *main account* rather than the sub-account.

        '
    - $ref: '#/components/parameters/v'
    get:
      operationId: listServices
      tags:
      - Administrative API
      summary: 'Services: List (Location)'
      description: 'Retrieve a list of all services provisioned on a location.


        **NOTE:** If you have added location services under sub-accounts, they will be returned from this endpoint on your *main account*.

        '
      parameters:
      - name: sku
        in: query
        schema:
          type: string
      - name: locationId
        in: query
        schema:
          type: string
      - name: locationAccountId
        in: query
        schema:
          type: string
        description: '*(Portal Mode only)* Filters on the account that the location receiving service is in.

          '
      - name: status
        in: query
        schema:
          type: string
          enum:
          - ACTIVE
          - STOPPED
          - ALL
        description: Status of the service. By default, returns only Active services, not All services.
      - name: agreementId
        in: query
        schema:
          type: integer
      - name: limit
        in: query
        schema:
          type: integer
          maximum: 1000
          default: 100
      - $ref: '#/components/parameters/offset'
      responses:
        '200':
          $ref: '#/components/responses/ServicesResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/subaccountservices:
    parameters:
    - name: accountId
      in: path
      required: true
      schema:
        type: string
      description: 'The ID of the account.


        **NOTE:** To retrieve information about services provisioned on a sub-account, enter the ID of the *main account* rather than the sub-account.

        '
    - $ref: '#/components/parameters/v'
    get:
      operationId: listSubAccountServices
      tags:
      - Administrative API
      summary: 'Services: List (Sub-Account)'
      description: 'Retrieve a list of all services provisioned on a sub-account.


        **NOTE:** If you have added services to sub-accounts, they will be returned from this endpoint on your *main account*.

        '
      parameters:
      - name: sku
        in: query
        schema:
          type: string
      - name: subAccountId
        in: query
        schema:
          type: string
      - name: status
        in: query
        schema:
          type: string
          enum:
          - ACTIVE
          - STOPPED
          - ALL
        description: Status of the service. By default, returns only Active services, not All services.
      - name: agreementId
        in: query
        schema:
          type: integer
      - name: limit
        in: query
        schema:
          type: integer
          maximum: 1000
          default: 100
      - $ref: '#/components/parameters/offset'
      responses:
        '200':
          $ref: '#/components/responses/SubAccountServicesResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/createsubaccount:
    parameters:
    - $ref: '#/components/parameters/accountId'
    - $ref: '#/components/parameters/v'
    post:
      operationId: createSubAccount
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateSubAccountRequest'
      tags:
      - Administrative API
      summary: 'Accounts: Create Sub-Account'
      description: Request to create a new empty sub-account under this account.
      responses:
        '200':
          $ref: '#/components/responses/CreateSubAccountResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/resourcesapplyrequests:
    parameters:
    - $ref: '#/components/parameters/accountId'
    - $ref: '#/components/parameters/v'
    post:
      operationId: resourcesApplyRequest
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ResourcesApplyRequest'
      tags:
      - Administrative API
      summary: 'Resources Apply Request: Create (Account)'
      description: 'Create a request to asynchronously apply resources using the URL of a GitHub repository.

        '
      responses:
        '200':
          $ref: '#/components/responses/ResourcesApplyRequestResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}/resourcesapplyrequests/{requestId}:
    parameters:
    - name: requestId
      in: path
      schema:
        type: integer
      description: 'requestId returned from a previous call to **Resources Apply Requests: Create (Account)**

        '
      required: true
    - $ref: '#/components/parameters/accountId'
    - $ref: '#/components/parameters/v'
    get:
      operationId: getResourcesApplyRequestStatus
      tags:
      - Administrative API
      summary: 'Resources Apply Request Status: Get (Account)'
      description: 'Make a request to get the status of the Resources Apply Request.

        '
      responses:
        '200':
          $ref: '#/components/responses/ResourcesApplyRequestResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts:
    parameters:
    - $ref: '#/components/parameters/v'
    get:
      operationId: listAccounts
      parameters:
      - name: name
        in: query
        schema:
          type: string
        description: Returns only accounts whose name contains the provided string
      - name: limit
        in: query
        schema:
          type: integer
          maximum: 1000
          default: 100
      - $ref: '#/components/parameters/offset'
      tags:
      - Administrative API
      summary: 'Accounts: List'
      description: List all accounts that you have access to. Unless you are in Partner Portal mode, this will only be your own account.
      responses:
        '200':
          $ref: '#/components/responses/AccountsResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
  /accounts/{accountId}:
    parameters:
    - $ref: '#/components/parameters/accountId'
    - $ref: '#/components/parameters/v'
    get:
      operationId: getAccount
      tags:
      - Administrative API
      summary: 'Accounts: Get'
      description: Get details for an account
      responses:
        '200':
          $ref: '#/components/responses/AccountResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
    put:
      operationId: updateAccount
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateAccount'
      tags:
      - Administrative API
      summary: 'Accounts: Update'
      description: Update an account's name or ID
      responses:
        '200':
          $ref: '#/components/responses/IdResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
components:
  schemas:
    Photo:
      type: object
      properties:
        url:
          type: string
          description: 'Valid URL to image. Accepted formats: .jpg, .gif, .png.


            While updating this field, if the image could not be downloaded, or if its URL is invalid, the image will be ignored. The success response will contain a warning message explaining why the image was not stored in the system.

            '
        sourceUrl:
          type: string
          readOnly: true
          description: 'The URL the image was uploaded from, if applicable. Note that this URL may not currently be valid.

            '
        description:
          type: string
          description: Image description.
        details:
          type: string
          description: Image details.
        alternateText:
          type: string
          description: The alternate text to be used for accessibility purposes.
        width:
          type: integer
          readOnly: true
          description: Original photo width.
        height:
          type: integer
          readOnly: true
          description: Original photo height.
        derivatives:
          type: array
          readOnly: true
          items:
            type: object
            properties:
              url:
                type: string
                readOnly: true
                description: 'The URL to derivative image.

                  Derivative images are alternate versions of the original image (e.g., smaller versions used to improve page-load times on your site). They are primarily used with our Pages product.'
              width:
                type: integer
                readOnly: true
                description: Derivative photo width.
              height:
                type: integer
                readOnly: true
                description: Derivative photo height.
            description: If no derivative photos are available, this attribute is omitted rather than empty.
    Account:
      type: object
      properties:
        accountId:
          type: string
          example: CUST-439843
        locationCount:
          type: integer
          readOnly: true
          description: The number of locations in this account.
        subAccountCount:
          type: integer
          readOnly: true
          description: The number of sub-accounts directly under this account, if any.
        parentAccountId:
          type: string
          description: Customer-provided ID of the account that this is a sub-account of, if any. Not provided if this is a top-level account.
        accountName:
          type: string
          description: The name of this account.
        contactFirstName:
          type: string
          description: First name of the contact user for this account.
        contactLastName:
          type: string
          description: Last name of the contact user for this account.
        contactPhone:
          type: string
          description: Phone number of the contact user for this account.
        contactEmail:
          type: string
          description: Email address of the contact user for this account.
    Entity:
      additionalProperties: false
      type: object
      properties:
        meta:
          additionalProperties: false
          type: object
          properties:
            accountId:
              minLength: 0
              type: string
              description: ID of the account associated with this Entity
            countryCode:
              minLength: 0
              type: string
              description: 'Country code of this Entity''s Language Profile (defaults to the country of the account)


                Filtering Type: `text`'
            createdTimestamp:
              minLength: 0
              type: string
              description: The timestamp of when the entity record was created.
            entityType:
              minLength: 0
              type: string
              description: 'This Entity''s type (e.g., location, event)


                Filtering Type: `text`'
            folderId:
              minLength: 0
              type: string
              description: 'The ID of the folder containing this Entity


                Filtering Type: `text`'
            id:
              minLength: 0
              type: string
              description: 'ID of this Entity


                Filtering Type: `text`'
            labels:
              uniqueItems: false
              type: array
              items:
                minLength: 0
                type: string
                description: 'Filtering Type: `text`'
              description: 'This Entity''s labels. If the **`v`** parameter is before `20211215`, this will be an integer.


                Filtering Type: `list of text`'
            language:
              minLength: 0
              type: string
              description: 'Language code of this Entity''s Language Profile (defaults to the language code of the account)


                Filtering Type: `text`'
            timestamp:
              minLength: 0
              type: string
              description: 'The timestamp of the most recent change to this entity record. Will be ignored when the client is saving entity data to Yext.


                **NOTE:** The timestamp may change even if observable fields stay the same.

                '
            uid:
              minLength: 0
              type: string
              description: 'The internal ID of the entity. This UID is a static, globally unique ID. Note that this value cannot be used in place of id in API calls to retrieve or edit Entity information.


                If the v param is before `20221206`, the returned value will be a hashed version of the entity UID (aka internal ID of the entity).

                '
          description: "Contains the metadata about the entity.\n\n```\nEligible For: \n   * atm\n   * event\n   * faq\n   * healthcareFacility\n   * healthcareProfessional\n   * hotel\n   * job\n   * location\n   * restaurant\n```"
        name:
          minLength: 0
          maxLength: 5000
          type: string
          description: "\n\n\nCannot Include:\n* HTML markup\n\nFiltering Type: `text`\n\n```\nEligible For: \n   * atm\n   * board\n   * brand\n   * card\n   * contactCard\n   * event\n   * faq\n   * financialProfessional\n   * healthcareFacility\n   * healthcareProfessional\n   * helpArticle\n   * hotel\n   * hotelRoomType\n   * job\n   * location\n   * organization\n   * product\n   * restaurant\n```"
        address:
          additionalProperties: false
          type: object
          properties:
            city:
              minLength: 0
              maxLength: 255
              type: string
              description: 'The city the entity (or the entity''s location) is in



                Cannot Include:

                * a URL or domain name


                Filtering Type: `text`'
            countryCode:
              minLength: 0
              pattern: ^[a-zA-Z]{2}$
              type: string
              description: 'Filtering Type: `text`'
            extraDescription:
              minLength: 0
              maxLength: 255
              type: string
              description: 'Provides additional information to help consumers get to the entity. This string appears along with the entity''s address (e.g., `In Menlo Mall, 3rd Floor`).

                It may also be used in conjunction with a hidden address (i.e., when **`addressHidden`** is `true`) to give consumers information about where the entity can be found (e.g., `Servicing the New York area`).


                Filtering Type: `text`'
            line1:
              minLengt

# --- truncated at 32 KB (424 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/yext/refs/heads/main/openapi/yext-administrative-api-api-openapi.yml