Abound Mailings API

The Mailings API from Abound — 2 operation(s) for mailings.

OpenAPI Specification

abound-mailings-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Abound API - v4 1099-INT Mailings API
  version: '4'
  description: 'Abound was a US tax-compliance API for platforms and marketplaces: W-9 / W-8BEN / W-8BEN-E collection, real-time TIN verification against the IRS, and generation, filing, correction, voiding and physical mailing of Form 1099-NEC, 1099-MISC, 1099-K and 1099-INT with federal and state tax authorities.


    NOTE: This document is a mechanical conversion of the first-party Fern API Definition that Abound shipped inside its official npm package @withabound/node-sdk (v6.0.68). Abound was acquired and the service has been retired: the withabound.com DNS zone is fully de-delegated and the API hosts no longer resolve. This spec is preserved as a historical record of the API surface.'
  x-status: retired
servers:
- url: https://production-api.withabound.com
  description: Production (retired - host no longer resolves)
- url: https://sandbox-api.withabound.com
  description: Sandbox (retired - host no longer resolves)
security:
- bearerAuth: []
tags:
- name: Mailings
paths:
  /v4/mailings:
    get:
      operationId: mailingsList
      tags:
      - Mailings
      summary: List all mailings
      description: Returns a list of mailings. Up to 100 mailings are returned per request.
      parameters:
      - name: page
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/Page'
      - name: status
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/MailingStatusEnum'
        description: Filters the list of mailings based on the `status` field.
      - name: userId
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/UserId'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MailingSchema'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorBadRequestSchema'
              example:
                errors:
                - field: metadata.key
                  message: Expected metadata.key to be of type string, but received number
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefaultErrorSchema'
              example:
                message: Unauthorized
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefaultErrorSchema'
              example:
                message: Not Found
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefaultErrorSchema'
              example:
                message: Internal Server Error
  /v4/mailings/{mailingId}:
    get:
      operationId: mailingsRetrieve
      tags:
      - Mailings
      summary: Retrieve a mailing
      description: Retrieves the details of an existing mailing.
      parameters:
      - name: mailingId
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/MailingId'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MailingSchema'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorBadRequestSchema'
              example:
                errors:
                - field: metadata.key
                  message: Expected metadata.key to be of type string, but received number
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefaultErrorSchema'
              example:
                message: Unauthorized
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefaultErrorSchema'
              example:
                message: Not Found
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefaultErrorSchema'
              example:
                message: Internal Server Error
    put:
      operationId: mailingsUpdate
      tags:
      - Mailings
      summary: Update a mailing
      description: Updates an existing mailing. Once a mailing has reached the `PROCESSING_FOR_DELIVERY` status, it cannot be updated. Any body parameters not provided will be removed.
      parameters:
      - name: mailingId
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/MailingId'
      - name: Idempotency-Key
        in: header
        required: false
        schema:
          $ref: '#/components/schemas/IdempotencyKey'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MailingRequestSchema'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MailingSchema'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorBadRequestSchema'
              example:
                errors:
                - field: metadata.key
                  message: Expected metadata.key to be of type string, but received number
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefaultErrorSchema'
              example:
                message: Unauthorized
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefaultErrorSchema'
              example:
                message: Not Found
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefaultErrorSchema'
              example:
                message: Internal Server Error
    delete:
      operationId: mailingsDelete
      tags:
      - Mailings
      summary: Delete a mailing
      description: Deletes a mailing. Once a mailing has reached the `PROCESSING_FOR_DELIVERY` status, it cannot be deleted.
      parameters:
      - name: mailingId
        in: path
        required: true
        schema:
          $ref: '#/components/schemas/MailingId'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OkSchema'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorBadRequestSchema'
              example:
                errors:
                - field: metadata.key
                  message: Expected metadata.key to be of type string, but received number
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefaultErrorSchema'
              example:
                message: Unauthorized
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefaultErrorSchema'
              example:
                message: Not Found
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DefaultErrorSchema'
              example:
                message: Internal Server Error
components:
  schemas:
    MailingNameSchema:
      type: object
      properties:
        name:
          type: string
          description: The individual's name (first + last) or business name.
        name2:
          type: string
          description: The business name, trade name, DBA name, or disregarded entity name, if different from `name`.
    UserId:
      type: string
      description: The unique identifier for a single end-user of your application.
    Page:
      type: integer
      description: The specific page of results you're requesting. Responses are limited to a maximum of 100 records.
    MailingStatusEnum:
      type: string
      enum:
      - CREATED
      - PROCESSING_FOR_DELIVERY
      - IN_TRANSIT
      - DELIVERED
      - RETURNED_TO_SENDER
    DefaultErrorSchema:
      type: object
      properties:
        message:
          type: string
          description: The error message associated with the response status code.
      required:
      - message
    MailingSchema:
      allOf:
      - $ref: '#/components/schemas/MailingRequestSchema'
      - type: object
        properties:
          id:
            type: string
            description: The unique identifier for this mailing.
          createdAt:
            type: string
            format: date-time
            description: The creation date and time of the mailing in `ISO 8601` format.
          url:
            type: string
            description: The URL to the mailed document.
          status:
            allOf:
            - $ref: '#/components/schemas/MailingStatusEnum'
            description: The status of the mailing.
          userId:
            $ref: '#/components/schemas/UserId'
          mailedFromId:
            type: string
            description: The `documentId` of the mailed document.
        required:
        - createdAt
        - id
        - mailedFromId
        - status
        - url
      examples:
      - id: mailingId_sampleFV9b73IvAD
        createdAt: '2024-01-01T00:00:00.000Z'
        url: https://tax-documents-sandbox.s3.us-west-2.amazonaws.com/FORM-1099-COPY-B.pdf
        status: CREATED
        to:
          address: 1401 N Shoreline Blvd
          address2: Suite 1
          city: Mountain View
          state: CA
          postalCode: '94043'
          country: US
          name: Ada Lovelace
        from:
          address: 256 Byron Street
          address2: Suite 32
          city: Palo Alto
          state: CA
          postalCode: '94306'
          country: US
          name: Hooli
        mailedFromId: documentId_sampletTtqNfulW8
    MailingRequestFromSchema:
      allOf:
      - $ref: '#/components/schemas/MailingNameSchema'
      - $ref: '#/components/schemas/AddressSchema'
      description: The mailing address of the sender.
    OkSchema:
      type: object
      additionalProperties: {}
    MailingId:
      type: string
      description: The unique identifier for an existing mailing.
    MailingRequestSchema:
      type: object
      properties:
        to:
          $ref: '#/components/schemas/MailingRequestToSchema'
        from:
          $ref: '#/components/schemas/MailingRequestFromSchema'
      required:
      - from
      - to
      examples:
      - to:
          address: 1401 N Shoreline Blvd
          address2: Suite 1
          city: Mountain View
          state: CA
          postalCode: '94043'
          country: US
          name: Ada Lovelace
        from:
          address: 256 Byron Street
          address2: Suite 32
          city: Palo Alto
          state: CA
          postalCode: '94306'
          country: US
          name: Hooli
    IdempotencyKey:
      type: string
      description: The unique key used to identify a request that has already been processed.
    ErrorBadRequestSchemaErrorsItem:
      type: object
      properties:
        field:
          type: string
          description: The field that caused the error.
        message:
          type: string
          description: The error message associated with the field.
      required:
      - message
    AddressSchema:
      type: object
      properties:
        address:
          type: string
          description: The legal address.
        address2:
          type: string
          description: The second part of the legal address, such as an apartment or suite number.
        city:
          type: string
          description: The city associated with the street address. Required if `country` is `US`.
        state:
          type: string
          description: The two-letter character code for this state or US territory (`CA` for California, `ME` for Maine, `PR` for Puerto Rico). Required if `country` is `US`. If foreign, use the province.
        postalCode:
          type: string
          description: The postal code associated with the street address. Required to be a 5-digit numerical value if `country` is `US`. If foreign, use the foreign postal code.
        country:
          type: string
          description: The country adhering to `ISO 3166-2` standards.
          minLength: 2
          maxLength: 2
      required:
      - address
      - country
    ErrorBadRequestSchema:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ErrorBadRequestSchemaErrorsItem'
          description: The error message(s) associated with the response status code.
      required:
      - errors
    MailingRequestToSchema:
      allOf:
      - $ref: '#/components/schemas/MailingNameSchema'
      - $ref: '#/components/schemas/AddressSchema'
      description: The mailing address of the recipient.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Bearer token. The token is the concatenation of your Abound appId and appSecret separated by a period, e.g. `appId_xxx.appSecret_yyy`.