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

# Find the partner you administer

> Returns the partner (nearly always one) that the signed-in account administers, with the id every other
partner route asks for and the standing it is in: `active`, `inactive` (not activated yet), `suspended`
(paused, with the reason Widgetic gave) or `payment_arrears` (a contract invoice is past its due date and
unpaid, since `overdueSince`; the partner is stopped until it is paid). A partner API key is that account's
key, so it reads its own partner here.

An account that administers no partner is not refused: it gets `standing: not_a_partner` and an empty
list, so a dashboard can tell "this is not a partner account" from "something failed".

The call stays open while the partner is paused, not yet active or in payment arrears: that is when its
dashboard has to say why.




## OpenAPI

````yaml /openapi/widgetic-api-public.json get /partners/mine
openapi: 3.0.0
info:
  title: Widgetic API Gateway
  version: 1.0.0
  description: API documentation for the Widgetic API Gateway
  license:
    name: Widgetic Integration License
    url: https://docs.widgetic.com/resources/license
servers:
  - url: https://api.widgetic.com/v1
    description: Production server
    variables:
      env:
        default: production
        description: Environment
      apiUrl:
        default: https://api.widgetic.com
        description: API URL
      apiVersion:
        default: /v1
        description: API Version path prefix
security: []
tags: []
paths:
  /partners/mine:
    get:
      tags:
        - Partners
      summary: Find the partner you administer
      description: >
        Returns the partner (nearly always one) that the signed-in account
        administers, with the id every other

        partner route asks for and the standing it is in: `active`, `inactive`
        (not activated yet), `suspended`

        (paused, with the reason Widgetic gave) or `payment_arrears` (a contract
        invoice is past its due date and

        unpaid, since `overdueSince`; the partner is stopped until it is paid).
        A partner API key is that account's

        key, so it reads its own partner here.


        An account that administers no partner is not refused: it gets
        `standing: not_a_partner` and an empty

        list, so a dashboard can tell "this is not a partner account" from
        "something failed".


        The call stays open while the partner is paused, not yet active or in
        payment arrears: that is when its

        dashboard has to say why.
      operationId: getMyPartners
      responses:
        '200':
          description: The partners the account administers, and the account's standing
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MyPartnersResponse'
        '401':
          description: The API key or session is missing or invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: The API key does not carry the `partner:read` scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - apiKeyAuth: []
components:
  schemas:
    MyPartnersResponse:
      type: object
      required:
        - success
        - data
      properties:
        success:
          type: boolean
          description: Always `true` on a success.
          example: true
        data:
          $ref: '#/components/schemas/MyPartners'
        meta:
          $ref: '#/components/schemas/ResponseMeta'
    ErrorResponse:
      type: object
      required:
        - success
        - message
        - error
      additionalProperties: true
      properties:
        success:
          type: boolean
          description: Always `false` on a failure.
          example: false
        message:
          type: string
          description: The same text as `error.message`, for a caller that reads one line.
        error:
          $ref: '#/components/schemas/ErrorDetail'
    MyPartners:
      type: object
      required:
        - standing
        - overdueSince
        - partners
      properties:
        standing:
          type: string
          enum:
            - not_a_partner
            - inactive
            - active
            - suspended
            - payment_arrears
          description: >
            The standing of the account as a whole, the word every gate reads:
            `not_a_partner` when the account administers no partner; otherwise
            `active` when any of its partners is in force, else
            `payment_arrears` when the partners that are active each have a
            contract invoice that is past its due date and unpaid, else
            `suspended` when any is paused, else `inactive`. `payment_arrears`
            is not set by anybody: it stops the same things a pause stops
            (billing, invoices, credits and the other routes a partner needs to
            pay stay open) and ends by itself the moment the invoice is paid.
        overdueSince:
          type: string
          format: date-time
          nullable: true
          description: >
            When the oldest overdue contract invoice was due; null unless
            `standing` is `payment_arrears`. Pay the invoices in the list of
            `GET /invoices/partner/{partnerId}` that are past their due date to
            end it.
        partners:
          type: array
          items:
            $ref: '#/components/schemas/MyPartner'
          description: >-
            The partners the account administers (nearly always one), the oldest
            first
      example:
        standing: Example standing
        overdueSince: '2026-01-15T09:30:00.000Z'
        partners:
          - Example MyPartner
    ResponseMeta:
      type: object
      description: >-
        Extra information about the answer: where a page sits in a list, the
        cursor of the next page, or warnings about a call that succeeded with a
        caveat.
      additionalProperties: true
      properties:
        page:
          type: integer
          description: The page that was read, counting from 1.
          example: 1
        size:
          type: integer
          description: How many items one page holds.
          example: 20
        total:
          type: integer
          description: How many items the whole list has.
          example: 135
        limit:
          type: integer
          description: The same as `size`.
          example: 20
        offset:
          type: integer
          description: How many items come before this page.
          example: 0
        hasNextPage:
          type: boolean
          example: true
        hasPreviousPage:
          type: boolean
          example: false
        nextCursor:
          type: string
          nullable: true
          description: >-
            Pass this as `cursor` to read the next page of a list that is read
            by cursor. `null` on the last page.
        warnings:
          type: array
          items:
            type: string
          description: >-
            Things the call did not do, though it succeeded (for example a table
            that could not be created just now).
    ErrorDetail:
      type: object
      required:
        - code
        - message
        - timestamp
      properties:
        code:
          type: string
          description: Machine-readable error code.
          example: RESOURCE_NOT_FOUND
        message:
          type: string
          description: Human-readable explanation.
          example: Composition not found
        param:
          type: string
          description: The field that caused the error, when one did.
          example: name
        docUrl:
          type: string
          description: Where this error is explained.
        suggestedAction:
          type: string
          description: What to do about it.
        retryAfter:
          type: integer
          description: >-
            Seconds to wait before trying again (rate limits). The same number
            is in the `Retry-After` header.
          example: 60
        details:
          type: object
          additionalProperties: true
          description: >-
            More about the error: the fields that failed, a limit that was
            reached.
        correlationId:
          type: string
          description: Quote this when you ask support about the call.
          example: req_123e4567-e89b-12d3-a456-426614174000
        timestamp:
          type: string
          format: date-time
          example: '2026-10-15T10:00:00.000Z'
    MyPartner:
      type: object
      description: >
        A partner as the person who administers it reads it: which partner it
        is, what standing it is in, and why it is paused when it is. The webhook
        address, its secret and the billing settings have their own routes and
        are not part of it.
      required:
        - id
        - name
        - status
        - allowedDomains
        - platformDomain
        - suspendedAt
        - suspensionReason
      properties:
        id:
          type: string
          format: uuid
          description: >-
            The id every other partner route asks for
            (`/partners/{partnerId}/...`)
        name:
          type: string
        status:
          type: string
          enum:
            - active
            - inactive
            - suspended
          description: >
            `active` while the partner is in force. `inactive` until Widgetic
            activates it (and after a deactivation). `suspended` while it is
            paused, which is done by hand and comes back when Widgetic resumes
            it.
        contactEmail:
          type: string
          nullable: true
        allowedDomains:
          type: array
          items:
            type: string
          description: >
            The domains Widgetic added to the embeds of this partner's
            customers. The domains the person added themselves are on the
            domains route of the account.
        platformDomain:
          type: string
          nullable: true
          example: acme.com
          description: >
            The website where the partner integrates Widgetic, as a bare name.
            It and every subdomain of it (`app.acme.com`, `learn.eu.acme.com`)
            can always show the partner's widgets, the ones its customers make
            through it included, and send entries to them, whatever
            `allowedDomains` and the account's own domain list say, so a list
            can never lock the partner's own website out. It is not an entry of
            `allowedDomains`, and it does not turn an empty list into a
            restriction: a partner that lists nothing stays unrestricted for
            every website. Widgetic sets it when the partner is set up; contact
            Widgetic to change it. `null` when none has been set.
        suspendedAt:
          type: string
          format: date-time
          nullable: true
          description: When the partner was paused; null unless it is paused now
        suspensionReason:
          type: string
          nullable: true
          description: >-
            The reason given when the partner was paused, as the partner is told
            it; null unless it is paused now
        createdAt:
          type: string
          format: date-time
          nullable: true
      example:
        id: 3fa85f64-5717-4562-b3fc-2c963f66afa6
        name: Example name
        status: Example status
        contactEmail: Example contactEmail
        allowedDomains: []
        platformDomain: acme.com
        suspendedAt: '2026-01-15T09:30:00.000Z'
        suspensionReason: Example suspensionReason
        createdAt: '2026-01-15T09:30:00.000Z'
  securitySchemes:
    apiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.