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

# /semafor/articles

> Get a full Semafor article by URL: headline, standfirst, the Semaform section blocks with their own headings and cited sources, the whole body as plain text and as HTML, publish and update timestamps, the credited reporters with their profile links, the vertical the piece is filed under, the lead image with its photo credit and the newsletter the story was written for.

**Price:** 1 credit

**⚠️ Common errors:** 412: Article not found (well-formed but nonexistent Semafor article URL or path)



## OpenAPI

````yaml /openapi/news-publishing.json post /api/semafor/articles
openapi: 3.1.0
info:
  title: Any Site API
  description: >+
    Any Site API provides programmatic access to data from LinkedIn, Instagram,
    Twitter, and other platforms.


    ## Authentication


    All API endpoints require an `access-token` header with a valid API token.
    Tokens can be created in the [dashboard](https://app.anysite.io/).


    ## Pricing


    Each endpoint has a credit cost listed in its description. Credits are
    deducted from your token balance per request.

  version: 0.0.1
servers: []
security:
  - AccessToken: []
paths:
  /api/semafor/articles:
    post:
      tags:
        - /semafor
      summary: /semafor/articles
      description: >-
        Get a full Semafor article by URL: headline, standfirst, the Semaform
        section blocks with their own headings and cited sources, the whole body
        as plain text and as HTML, publish and update timestamps, the credited
        reporters with their profile links, the vertical the piece is filed
        under, the lead image with its photo credit and the newsletter the story
        was written for.


        **Price:** 1 credit


        **⚠️ Common errors:** 412: Article not found (well-formed but
        nonexistent Semafor article URL or path)
      operationId: __api_semafor_articles_post
      parameters:
        - name: access-token
          in: header
          required: true
          schema:
            anyOf:
              - type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SemaforArticlesPayload'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SemaforArticle'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    SemaforArticlesPayload:
      properties:
        timeout:
          type: integer
          maximum: 1500
          minimum: 20
          default: 300
        article:
          type: string
          minLength: 1
      type: object
      required:
        - article
    SemaforArticle:
      properties:
        '@type':
          type: string
          default: SemaforArticle
        alias:
          type: string
        article_title:
          type: string
        web_url:
          type: string
        template:
          type: string
        published_on:
          anyOf:
            - type: string
            - type: 'null'
        published_at:
          anyOf:
            - type: integer
            - type: 'null'
        updated_at:
          anyOf:
            - type: integer
            - type: 'null'
        social_title:
          anyOf:
            - type: string
            - type: 'null'
        section:
          anyOf:
            - type: string
            - type: 'null'
        section_name:
          anyOf:
            - type: string
            - type: 'null'
        section_url:
          anyOf:
            - type: string
            - type: 'null'
        image:
          anyOf:
            - type: string
            - type: 'null'
        image_credit:
          anyOf:
            - type: string
            - type: 'null'
        text:
          anyOf:
            - type: string
            - type: 'null'
        html:
          anyOf:
            - type: string
            - type: 'null'
        authors:
          items:
            $ref: '#/components/schemas/SemaforAuthor'
          type: array
          default: []
        sections:
          items:
            $ref: '#/components/schemas/SemaforArticleSection'
          type: array
          default: []
        newsletter:
          anyOf:
            - $ref: '#/components/schemas/SemaforNewsletter'
            - type: 'null'
      type: object
      required:
        - alias
        - article_title
        - web_url
        - template
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
      type: object
    SemaforAuthor:
      properties:
        '@type':
          type: string
          default: SemaforAuthor
        name:
          type: string
        alias:
          anyOf:
            - type: string
            - type: 'null'
        profile_url:
          anyOf:
            - type: string
            - type: 'null'
      type: object
      required:
        - name
    SemaforArticleSection:
      properties:
        '@type':
          type: string
          default: SemaforArticleSection
        heading:
          anyOf:
            - type: string
            - type: 'null'
        text:
          anyOf:
            - type: string
            - type: 'null'
        html:
          anyOf:
            - type: string
            - type: 'null'
        sources:
          items:
            type: string
          type: array
          default: []
      type: object
    SemaforNewsletter:
      properties:
        '@type':
          type: string
          default: SemaforNewsletter
        name:
          anyOf:
            - type: string
            - type: 'null'
        alias:
          anyOf:
            - type: string
            - type: 'null'
        frequency:
          anyOf:
            - type: string
            - type: 'null'
        web_url:
          anyOf:
            - type: string
            - type: 'null'
      type: object
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
        msg:
          type: string
        type:
          type: string
        input: {}
        ctx:
          type: object
      type: object
      required:
        - loc
        - msg
        - type
  securitySchemes:
    AccessToken:
      type: apiKey
      in: header
      name: access-token
      description: API token from the dashboard

````