> ## Documentation Index
> Fetch the complete documentation index at: https://developers.hubspot.jp/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Get email subscription status for an email address

> For a given portal, return the email subscription information for the given email address and portal. For specific email subscription types, if the value is true or false, the definition will be returned.

export const ScopesList = ({scopes = [], description = "この API には、次のいずれかのスコープが必要です。"}) => {
  if (!scopes || scopes.length === 0) {
    return null;
  }
  const sortedScopes = scopes.sort((a, b) => a.localeCompare(b));
  return <div>
      <div className="text-sm mb-2">{description}</div>
      <div>
        {sortedScopes.map((scope, index) => <div key={index}>
            <code>
              <span className="text-xs">{scope}</span>
            </code>
          </div>)}
      </div>
    </div>;
};

<Accordion title="Scope requirements">
  <ScopesList scopes={['content']} />
</Accordion>


## OpenAPI

````yaml specs/legacy/v1/marketing-subscriptions-v1.json GET /email/public/v1/subscriptions/{email_address}
openapi: 3.0.0
info:
  title: Subscriptions preferences API - V1
  version: 1.0.0
  description: >-
    The subscription preferences APIs allow you to retrieve and manage data on
    the communications that a contact has opted into.
servers:
  - url: https://api.hubapi.com
    description: HubSpot API Server
security: []
paths:
  /email/public/v1/subscriptions/{email_address}:
    get:
      summary: Get email subscription status for an email address
      description: >-
        For a given portal, return the email subscription information for the
        given email address and portal. For specific email subscription types,
        if the value is true or false, the definition will be returned. If the
        value is null for a specific type, nothing will be returned.
      operationId: getEmailSubscriptionStatus
      parameters:
        - name: email_address
          in: path
          required: true
          description: The email address for which you are requesting subscription status.
          schema:
            type: string
            format: email
      responses:
        '200':
          description: Email subscription status retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubscriptionStatusResponse'
              example:
                subscribed: false
                markedAsSpam: false
                portalId: 62515
                bounced: false
                email: jerry@example.org
                subscriptionStatuses: []
                status: unsubscribed
        default:
          description: Error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    SubscriptionStatusResponse:
      type: object
      properties:
        subscribed:
          type: boolean
          description: Whether the email is subscribed to all emails
        markedAsSpam:
          type: boolean
          description: Whether the email has been marked as spam
        portalId:
          type: integer
          description: The portal ID
        bounced:
          type: boolean
          description: Whether the email has bounced
        email:
          type: string
          format: email
          description: The email address
        subscriptionStatuses:
          type: array
          items:
            $ref: '#/components/schemas/SubscriptionStatus'
        status:
          type: string
          description: Overall subscription status (e.g., subscribed, unsubscribed)
    Error:
      type: object
      properties:
        status:
          type: string
          description: HTTP status code
        message:
          type: string
          description: Error message
        correlationId:
          type: string
          description: Request correlation ID for debugging
    SubscriptionStatus:
      type: object
      properties:
        id:
          type: integer
          description: Subscription type ID
        subscribed:
          type: boolean
          description: Whether subscribed to this type
        optState:
          type: string
          enum:
            - OPT_IN
            - OPT_OUT
            - NOT_OPTED
          description: Opt state for this subscription type
        legalBasis:
          type: string
          enum:
            - LEGITIMATE_INTEREST_PQL
            - LEGITIMATE_INTEREST_CLIENT
            - PERFORMANCE_OF_CONTRACT
            - CONSENT_WITH_NOTICE
            - NON_GDPR
          description: Legal basis for GDPR compliance
        legalBasisExplanation:
          type: string
          description: Free-form text explaining the legal basis

````