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

# Pesquisa de redes sociais

> Dados públicos de redes sociais do Reddit, X, YouTube, TikTok, Instagram e LinkedIn, com uma única saída normalizada por modo, compartilhada por todas as plataformas.

Cada modo retorna `output` normalizado, compartilhado pelas seis plataformas. A saída nativa do Provider não é repetida nele; ela permanece no Run e pode ser lida com [Get Run](https://glasser.ai/docs/pt/api-reference/runs/get.md). Um valor que uma plataforma ou o Provider não informa é `null`.

Leia `result_status` separadamente de `status`: `success`, `no_result`, `error` ou `pending`. Uma resposta vazia, mas válida, é `no_result` e mantém o formato do modo: `items` ou `profiles` é `[]`, ou todos os campos são `null`. `charge_usd` totaliza `runs` desta resposta. Para uma rota do Apify pendente (HTTP 202), siga o [result\_url](https://glasser.ai/docs/pt/api-reference/solutions/gtm/social_research/result.md) autenticado. Consulte [Seleção de Provider e cobranças](https://glasser.ai/docs/pt/api-reference/solutions/overview.md#how-provider-selection-works).

## Saída por modo

Os campos seguem as [convenções de campos](https://glasser.ai/docs/pt/api-reference/solutions/overview.md#field-conventions).

| `mode` | `output` |
| - | - |
| `profile` | `platform`, `handle`, `name`, `url`, `bio`, `headline`, `website`, `followers`, `following`, `posts`, `verified` |
| `search` | `items[]`: `id`, `url`, `title`, `text`, `author`, `author_url`, `published_at`, `likes`, `comments`, `shares`, `views` |
| `feed` | `items[]`: os mesmos campos da publicação |
| `post` | `id`, `url`, `title`, `text`, `author`, `author_url`, `published_at`, `likes`, `comments`, `shares`, `views` |
| `find` | `profiles[]`: `platform`, `url`, `handle`, `scrapecreators_confidence`, `followers` (para o Reddit: subreddits correspondentes); `pdl_likelihood` no nível superior |

* `published_at` está em UTC ISO 8601, ou `null` quando o Provider não fornece um horário exato (resultados de pesquisa do YouTube).
* `title` é o título do Reddit ou do YouTube. `text` é apenas o corpo (o texto da própria publicação no Reddit, a descrição do YouTube, o tweet, a legenda ou o texto da publicação), e é `null` quando não há nenhum.
* `bio` é a descrição em texto livre (no LinkedIn: a seção About). `headline` é a linha do cargo no LinkedIn. `website` é o site da própria conta: o site da empresa no LinkedIn ou o link expandido do perfil no X.
* `likes` é a pontuação líquida do Reddit (pode ser negativa), os favoritos do X, os diggs do TikTok ou as curtidas e reações nas demais plataformas. `shares` são os retweets do X, os envios pela folha de compartilhamento do TikTok ou as republicações do LinkedIn. `views` são as impressões do X, as reproduções do TikTok ou as visualizações de vídeos do YouTube e do Instagram.
* Em `find`, `platform` é o nome da rede em minúsculas (`twitter` torna-se `x`), e `handle` pode ser usado como o `handle` de social\_research. `scrapecreators_confidence` é a pontuação de 0 a 1 da ScrapeCreators por perfil. `pdl_likelihood` é a pontuação de correspondência de 1 a 10 da People Data Labs para a pessoa inteira, preenchida somente em `linkedin.find`.
* O `id` do LinkedIn é o id básico da atividade, sem o prefixo `urn:li:activity:`.

```json
{
  "action": "x.feed",
  "provider": "scrapecreators",
  "status": "COMPLETED",
  "result_status": "success",
  "output": {
    "items": [
      { "id": "2110166802315804689", "url": "https://x.com/stripe/status/2110166802315804689", "title": null, "text": "You can now use Underdog…", "author": "stripe", "author_url": "https://x.com/stripe", "published_at": "2026-10-14T00:32:25Z", "likes": 55, "comments": 21, "shares": 6, "views": 8447 }
    ]
  },
  "charge_usd": "0.00188",
  "runs": [{ "provider": "scrapecreators", "status": "COMPLETED", "charge_usd": "0.00188" }],
  "result_url": "/v1/solutions/gtm/social_research/result?token=…"
}
```


## OpenAPI

````yaml /openapi.pt.json post /v1/solutions/gtm/social_research
openapi: 3.1.0
info:
  title: Glasser
  version: 0.0.1
  description: >-
    Uma chave, sem contrato, pagamento por chamada, para todas as APIs pagas
    adquiridas no atacado. Cada resposta contém x-request-id; cada corpo de erro
    contém o mesmo envelope.
servers:
  - url: https://api.glasser.ai
security: []
tags:
  - name: Solutions
  - name: Endpoints
  - name: Runs
  - name: Balance
paths:
  /v1/solutions/gtm/social_research:
    post:
      tags:
        - Solutions
      summary: Pesquisa em redes sociais
      description: >-
        Dados públicos de redes sociais no Reddit, X, YouTube, TikTok, Instagram
        e LinkedIn: pesquise publicações, leia uma conta, suas publicações
        recentes ou uma publicação específica e encontre a mesma conta em outras
        plataformas. Escolha uma plataforma e um modo e forneça uma consulta,
        identificador ou url.


        Todos os modos retornam uma saída normalizada compartilhada pelas seis
        plataformas, com o id, o provedor de dados e o status do ciclo de vida
        do último Run: profile fornece uma conta (platform, handle, name, url,
        bio, headline, website, followers, following, posts, verified), search e
        feed fornecem output.items[] de publicações (id, url, title, text,
        author, author_url, published_at, likes, comments, shares, views), post
        fornece uma publicação com os mesmos campos, find fornece
        output.profiles[] (platform, url, handle, scrapecreators_confidence,
        followers; para o Reddit, os subreddits correspondentes) além de
        pdl_likelihood. A saída nativa do provedor de dados não é repetida em
        output; ela permanece no Run e pode ser lida com GET /v1/runs/:id. Um
        valor que a plataforma ou o provedor de dados não informar será null.


        Leia result_status separadamente de status: success, no_result, error ou
        pending. Uma resposta vazia, mas válida, é no_result e mantém a
        estrutura do modo (items ou profiles é [], ou todos os campos são null).
        charge_usd é a cobrança total dos Runs desta resposta e é null até que
        todos os Runs listados sejam concluídos. provider=auto seleciona o
        primeiro provedor de dados elegível e tenta o próximo somente em
        PROVIDER_ERROR, TIMED_OUT ou 503 na admissão; um provedor de dados
        nomeado nunca usa fallback. Para QUEUED/RUNNING (HTTP 202, as rotas do
        Apify), consulte o result_url autenticado na origem da API. Reutilize a
        mesma Idempotency-Key e os mesmos parâmetros de execução para uma nova
        tentativa intencional.
      operationId: gtm-social-research
      parameters:
        - name: idempotency-key
          in: header
          schema:
            type: string
            minLength: 1
            description: >-
              Gere um valor exclusivo para cada execução pretendida
              (recomenda-se um UUID). Tente novamente com a mesma chave e os
              mesmos parâmetros de execução para recuperar o Run original sem
              uma segunda cobrança. Alterar os parâmetros de execução usando a
              mesma chave retorna 409; alterar task_id ou metadata não atualiza
              o Run original.
          required: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                platform:
                  type: string
                  enum:
                    - reddit
                    - x
                    - youtube
                    - tiktok
                    - instagram
                    - linkedin
                mode:
                  anyOf:
                    - type: string
                      enum:
                        - search
                        - profile
                        - feed
                        - post
                        - find
                      description: >-
                        Padrão: search. Todas as plataformas são compatíveis com
                        cada modo.


                        - search: publicações que correspondem à consulta.

                        - profile: detalhes da conta a partir do handle (Reddit:
                        subreddit). Para o LinkedIn, forneça uma URL de pessoa
                        ou empresa.

                        - feed: publicações ou vídeos recentes a partir do
                        handle. Para o LinkedIn, forneça uma URL de empresa.

                        - post: uma publicação ou vídeo a partir da URL.

                        - find: outros perfis sociais a partir do handle. Para o
                        LinkedIn, forneça a URL do perfil de uma pessoa; para o
                        Reddit, forneça uma consulta para encontrar subreddits.
                    - type: 'null'
                provider:
                  anyOf:
                    - type: string
                      enum:
                        - auto
                        - scrapecreators
                        - apify
                        - tikhub
                        - pdl
                      description: >-
                        Padrão auto: seleciona o primeiro provedor de dados
                        elegível na ordem de preferência da Glasser. Um provedor
                        de dados nomeado deve aceitar a solicitação e ser
                        permitido pela sua Key; não há fallback para outro
                        provedor de dados. Os valores disponíveis estão listados
                        abaixo.
                    - type: 'null'
                query:
                  anyOf:
                    - type: string
                      minLength: 1
                      maxLength: 500
                    - type: 'null'
                handle:
                  anyOf:
                    - type: string
                      minLength: 1
                      maxLength: 100
                      description: Um nome de usuário sem @ ou um nome de subreddit sem r/.
                    - type: 'null'
                url:
                  anyOf:
                    - type: string
                      minLength: 1
                      maxLength: 2048
                    - type: 'null'
                task_id:
                  anyOf:
                    - type: string
                      description: >-
                        Agrupe Runs relacionados, incluindo o fallback
                        automático, em um único Task. Reutilize uma string
                        estável e filtre a lista de Runs por task para
                        recuperá-los.
                    - type: 'null'
                metadata:
                  anyOf:
                    - anyOf:
                        - type: object
                          additionalProperties:
                            type: string
                            minLength: 1
                            maxLength: 500
                          maxProperties: 20
                          propertyNames:
                            type: string
                            pattern: ^[a-z][a-z0-9_]{0,39}$
                        - {}
                      description: >-
                        Campos opcionais de acompanhamento, retornados no Run e
                        disponíveis como filtros. Eles nunca são enviados ao
                        provedor de dados nem afetam o roteamento, o Price ou a
                        idempotência.


                        - Até 20 chaves: letras minúsculas, dígitos e
                        sublinhados; comece com uma letra; no máximo 40
                        caracteres.

                        - Valores: strings de 1–500 caracteres.

                        - user_id: o ID opaco do seu usuário final, nunca o
                        endereço de e-mail ou o nome dele.


                        Entradas inválidas são descartadas por inteiro, não
                        truncadas. A solicitação continua, e o Run retorna os
                        campos que foram armazenados.
                    - type: 'null'
              required:
                - platform
              additionalProperties: false
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/SocialResearchResult'
        '202':
          description: Success
          content:
            application/json:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/SocialResearchResult'
        '400':
          description: ValidationFailed | IdempotencyKeyRequired
          content:
            application/json:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/ValidationFailedEncoded'
                  - $ref: '#/components/schemas/IdempotencyKeyRequiredEncoded'
                  - $ref: '#/components/schemas/ValidationFailedEncoded'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedEncoded'
        '402':
          description: InsufficientBalance
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InsufficientBalanceEncoded'
        '403':
          description: EndpointNotPermitted | Forbidden
          content:
            application/json:
              schema:
                anyOf:
                  - $ref: '#/components/schemas/EndpointNotPermittedEncoded'
                  - $ref: '#/components/schemas/ForbiddenEncoded'
        '409':
          description: IdempotencyConflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IdempotencyConflictEncoded'
        '429':
          description: RateLimited
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitedEncoded'
        '503':
          description: ServiceUnavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailableEncoded'
      security:
        - bearer: []
components:
  schemas:
    SocialResearchResult:
      type: object
      properties:
        id:
          type: string
        run_url:
          type: string
          description: Abra este Run no console. Requer associação ao Workspace.
        provider:
          type: string
          pattern: ^[a-z0-9][a-z0-9-]*$
        endpoint:
          type: string
          pattern: ^\/.+$
        endpoint_version:
          type: integer
          exclusiveMinimum: 0
        status:
          type: string
          enum:
            - QUEUED
            - RUNNING
            - COMPLETED
            - FAILED
            - STOPPED
          description: >-
            QUEUED ou RUNNING: ainda em andamento. COMPLETED: uma resposta do
            provedor de dados está disponível, incluindo respostas não 2xx.
            FAILED: consulte `failure`. STOPPED: interrompido antes do despacho.
            Leia charge_usd separadamente de status.
        failure:
          anyOf:
            - type: object
              properties:
                kind:
                  type: string
                  enum:
                    - TIMED_OUT
                    - INTERNAL
                message:
                  type: string
              required:
                - kind
                - message
              additionalProperties: false
            - type: 'null'
          description: Motivo da falha do Run. Não nulo somente quando status é FAILED.
        input:
          type: object
        output:
          anyOf:
            - anyOf:
                - type: object
                  properties:
                    platform:
                      anyOf:
                        - type: string
                        - type: 'null'
                    handle:
                      anyOf:
                        - type: string
                        - type: 'null'
                    name:
                      anyOf:
                        - type: string
                        - type: 'null'
                    url:
                      anyOf:
                        - type: string
                        - type: 'null'
                    bio:
                      anyOf:
                        - type: string
                        - type: 'null'
                      description: 'Descrição em texto livre (LinkedIn: a seção About).'
                    headline:
                      anyOf:
                        - type: string
                        - type: 'null'
                      description: >-
                        Título profissional da pessoa no LinkedIn (linha do
                        cargo); nulo em outras plataformas.
                    website:
                      anyOf:
                        - type: string
                        - type: 'null'
                      description: >-
                        Site próprio da conta: site da empresa no LinkedIn, link
                        do perfil no X (expandido, nunca t.co); nulo em outras
                        plataformas.
                    followers:
                      anyOf:
                        - type: integer
                        - type: 'null'
                      description: >-
                        Seguidores; Reddit: inscritos no subreddit; YouTube:
                        inscritos.
                    following:
                      anyOf:
                        - type: integer
                        - type: 'null'
                      description: >-
                        Contas seguidas por esta conta. Nulo no Reddit, YouTube
                        e LinkedIn.
                    posts:
                      anyOf:
                        - type: integer
                        - type: 'null'
                    verified:
                      anyOf:
                        - type: boolean
                        - type: 'null'
                  required:
                    - platform
                    - handle
                    - name
                    - url
                    - bio
                    - headline
                    - website
                    - followers
                    - following
                    - posts
                    - verified
                  additionalProperties: false
                - type: object
                  properties:
                    items:
                      type: array
                      items:
                        type: object
                        properties:
                          id:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: >-
                              ID da publicação na plataforma. LinkedIn: ID de
                              atividade sem prefixo urn:li:activity:.
                          url:
                            anyOf:
                              - type: string
                              - type: 'null'
                          title:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: >-
                              Título no Reddit e no YouTube; nulo em outras
                              plataformas.
                          text:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: >-
                              Conteúdo da publicação: self-text do Reddit,
                              descrição do YouTube, tweet, legenda ou texto da
                              publicação. Nulo quando o provedor de dados não
                              retorna conteúdo (uma publicação de link do
                              Reddit, um resultado de busca do YouTube).
                          author:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: >-
                              Nome de exibição ou, quando a plataforma não
                              mostra outro nome, o identificador da conta (X,
                              TikTok, Instagram, Reddit).
                          author_url:
                            anyOf:
                              - type: string
                              - type: 'null'
                          published_at:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: >-
                              Horário de publicação em UTC no formato ISO 8601;
                              nulo quando o provedor de dados não fornece um
                              horário exato.
                          likes:
                            anyOf:
                              - type: integer
                              - type: 'null'
                            description: >-
                              Reddit: pontuação líquida (votos positivos menos
                              votos negativos; pode ser negativa). X: favoritos.
                              TikTok: diggs. Outras plataformas: curtidas ou
                              reações.
                          comments:
                            anyOf:
                              - type: integer
                              - type: 'null'
                          shares:
                            anyOf:
                              - type: integer
                              - type: 'null'
                            description: >-
                              X: retuítes. TikTok: contagem de compartilhamentos
                              (envios pela folha de compartilhamento, não
                              republicações). LinkedIn: republicações. Nulo no
                              Reddit, YouTube e Instagram.
                          views:
                            anyOf:
                              - type: integer
                              - type: 'null'
                            description: >-
                              X: impressões. TikTok: reproduções. YouTube:
                              visualizações. Instagram: visualizações de vídeo.
                              Nulo no Reddit e LinkedIn.
                        required:
                          - id
                          - url
                          - title
                          - text
                          - author
                          - author_url
                          - published_at
                          - likes
                          - comments
                          - shares
                          - views
                        additionalProperties: false
                  required:
                    - items
                  additionalProperties: false
                - type: object
                  properties:
                    id:
                      anyOf:
                        - type: string
                        - type: 'null'
                      description: >-
                        ID da publicação na plataforma. LinkedIn: ID de
                        atividade sem prefixo urn:li:activity:.
                    url:
                      anyOf:
                        - type: string
                        - type: 'null'
                    title:
                      anyOf:
                        - type: string
                        - type: 'null'
                      description: >-
                        Título no Reddit e no YouTube; nulo em outras
                        plataformas.
                    text:
                      anyOf:
                        - type: string
                        - type: 'null'
                      description: >-
                        Conteúdo da publicação: self-text do Reddit, descrição
                        do YouTube, tweet, legenda ou texto da publicação. Nulo
                        quando o provedor de dados não retorna conteúdo (uma
                        publicação de link do Reddit, um resultado de busca do
                        YouTube).
                    author:
                      anyOf:
                        - type: string
                        - type: 'null'
                      description: >-
                        Nome de exibição ou, quando a plataforma não mostra
                        outro nome, o identificador da conta (X, TikTok,
                        Instagram, Reddit).
                    author_url:
                      anyOf:
                        - type: string
                        - type: 'null'
                    published_at:
                      anyOf:
                        - type: string
                        - type: 'null'
                      description: >-
                        Horário de publicação em UTC no formato ISO 8601; nulo
                        quando o provedor de dados não fornece um horário exato.
                    likes:
                      anyOf:
                        - type: integer
                        - type: 'null'
                      description: >-
                        Reddit: pontuação líquida (votos positivos menos votos
                        negativos; pode ser negativa). X: favoritos. TikTok:
                        diggs. Outras plataformas: curtidas ou reações.
                    comments:
                      anyOf:
                        - type: integer
                        - type: 'null'
                    shares:
                      anyOf:
                        - type: integer
                        - type: 'null'
                      description: >-
                        X: retuítes. TikTok: contagem de compartilhamentos
                        (envios pela folha de compartilhamento, não
                        republicações). LinkedIn: republicações. Nulo no Reddit,
                        YouTube e Instagram.
                    views:
                      anyOf:
                        - type: integer
                        - type: 'null'
                      description: >-
                        X: impressões. TikTok: reproduções. YouTube:
                        visualizações. Instagram: visualizações de vídeo. Nulo
                        no Reddit e LinkedIn.
                  required:
                    - id
                    - url
                    - title
                    - text
                    - author
                    - author_url
                    - published_at
                    - likes
                    - comments
                    - shares
                    - views
                  additionalProperties: false
                - type: object
                  properties:
                    profiles:
                      type: array
                      items:
                        type: object
                        properties:
                          platform:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: >-
                              Nome da rede em letras minúsculas. As seis
                              plataformas de social_research usam seus nomes de
                              solicitação (twitter é x); outras redes (facebook,
                              github, …) são mantidas como estão.
                          url:
                            anyOf:
                              - type: string
                              - type: 'null'
                          handle:
                            anyOf:
                              - type: string
                              - type: 'null'
                            description: >-
                              Nome de usuário nessa rede, utilizável como
                              social_research `handle`; nulo quando o provedor
                              de dados não o fornece.
                          scrapecreators_confidence:
                            anyOf:
                              - anyOf:
                                  - type: number
                                  - type: string
                                    enum:
                                      - Infinity
                                      - '-Infinity'
                                      - NaN
                              - type: 'null'
                            description: >-
                              Grau de confiança de 0 a 1 da ScrapeCreators de
                              que este perfil pertence à conta. Nulo para outros
                              provedores de dados.
                          followers:
                            anyOf:
                              - type: integer
                              - type: 'null'
                            description: >-
                              reddit.find: inscritos no subreddit. Nulo em
                              outras plataformas.
                        required:
                          - platform
                          - url
                          - handle
                          - scrapecreators_confidence
                          - followers
                        additionalProperties: false
                    pdl_likelihood:
                      anyOf:
                        - type: integer
                        - type: 'null'
                      description: >-
                        Pontuação de 1 a 10 da People Data Labs sobre o quanto o
                        registro da pessoa corresponde à entrada; abrange a
                        pessoa inteira, não apenas um perfil. Apenas
                        linkedin.find; nulo nos demais casos.
                  required:
                    - profiles
                    - pdl_likelihood
                  additionalProperties: false
            - type: 'null'
          description: >-
            Campos normalizados por modo, compartilhados por todas as
            plataformas. A saída nativa do provedor de dados não é repetida
            aqui; ela permanece no Run (GET /v1/runs/:id). Os valores que uma
            plataforma ou o provedor de dados não informa são nulos.


            - profile: platform, handle, name, url, bio, headline, website,
            followers, following, posts, verified

            - search: items[]: id, url, title, text, author, author_url,
            published_at, likes, comments, shares, views

            - feed: items[]: os mesmos campos de publicação de search

            - post: id, url, title, text, author, author_url, published_at,
            likes, comments, shares, views

            - find: profiles[]: platform, url, handle,
            scrapecreators_confidence, followers (Reddit: subreddits
            correspondentes); pdl_likelihood
        provider_response:
          anyOf:
            - type: object
              properties:
                http_status:
                  type: integer
                  minimum: 100
                  maximum: 599
                  description: >-
                    Status HTTP retornado pelo provedor de dados. Verifique-o
                    mesmo quando o Run estiver COMPLETED.
                error:
                  anyOf:
                    - {}
                    - type: 'null'
              required:
                - http_status
              additionalProperties: false
            - type: 'null'
          description: >-
            Não nulo somente quando status é COMPLETED.


            - Para respostas 2xx, output contém JSON nativo do provedor de dados
            (qualquer formato) ou nulo para um corpo vazio.

            - Para respostas não 2xx, error contém o corpo de erro do provedor
            de dados e output é nulo.


            Os campos sensíveis são removidos de ambos os corpos.
        charge_usd:
          anyOf:
            - type: string
              pattern: ^(0|[1-9]\d*)\.(\d{2}|\d{2}\d{0,3}[1-9])$
              description: >-
                String decimal exata em USD (mínimo de 2 e máximo de 6 casas
                decimais, com uma única grafia canônica). Some usando aritmética
                decimal ou multiplique por 10^6 — nunca use números de ponto
                flutuante.
            - type: 'null'
          description: >-
            Cobrança total dos Runs nesta resposta de Solution. Nulo até que
            todos os Runs listados sejam liquidados. Cada Run mantém sua própria
            cobrança; falhas também podem ser cobradas.
        charge_basis:
          anyOf:
            - type: object
              properties:
                clause:
                  type: string
                  enum:
                    - rule
                    - NO_RESULT
                    - PROVIDER_ERROR
                    - TIMED_OUT
                    - INTERNAL
                quantity:
                  anyOf:
                    - type: integer
                      minimum: 0
                    - type: 'null'
              required:
                - clause
                - quantity
              additionalProperties: false
            - type: 'null'
          description: >-
            Base de cobrança de um único Run ou nulo para um total de vários
            Runs. Leia runs[].charge_basis para cada cobrança.
        stoppable:
          type: boolean
          description: >-
            Indica se uma solicitação de interrupção pode ser aceita atualmente.
            Isso não garante que o Run possa ser interrompido antes do despacho.
        stop_requested_at:
          anyOf:
            - type: string
              description: Timestamp UTC no formato ISO-8601
              format: date-time
            - type: 'null'
          description: >-
            Quando uma interrupção foi solicitada. O Run ainda pode continuar se
            o despacho já tiver começado.
        created_at:
          type: string
          description: carimbo de data e hora UTC ISO-8601
          format: date-time
        started_at:
          anyOf:
            - type: string
              description: carimbo de data e hora UTC ISO-8601
              format: date-time
            - type: 'null'
        completed_at:
          anyOf:
            - type: string
              description: carimbo de data e hora UTC ISO-8601
              format: date-time
            - type: 'null'
        task_id:
          anyOf:
            - type: string
            - type: 'null'
        metadata:
          type: object
          additionalProperties:
            type: string
            minLength: 1
            maxLength: 500
          maxProperties: 20
          propertyNames:
            type: string
            pattern: ^[a-z][a-z0-9_]{0,39}$
          description: >-
            Seus campos de acompanhamento armazenados. Use-os para filtrar Runs.
            Eles nunca são enviados ao provedor de dados nem afetam o
            roteamento, o Price ou a idempotência.


            - Até 20 chaves: letras minúsculas, dígitos e sublinhados; comece
            com uma letra; no máximo 40 caracteres.

            - Valores: strings de 1–500 caracteres.

            - user_id: o ID opaco do seu usuário final, nunca o endereço de
            e-mail ou o nome dele.
        action:
          type: string
          pattern: ^[a-z]+\.[a-z]+$
          description: >-
            `<platform>.<mode>`; uma página de empresa do LinkedIn no modo de
            perfil é linkedin.company.
        result_status:
          type: string
          enum:
            - success
            - no_result
            - error
            - pending
          description: >-
            Status de entrega comercial, independente do ciclo de vida final do
            Run em status. no_result é uma resposta vazia, mas válida; error
            significa que não foi possível entregar a saída do provedor de
            dados.
        error:
          anyOf:
            - type: object
              properties:
                code:
                  type: string
                message:
                  type: string
              required:
                - code
                - message
              additionalProperties: false
            - type: 'null'
        runs:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              run_url:
                type: string
                description: Abra este Run no console. Requer associação ao Workspace.
              provider:
                type: string
                pattern: ^[a-z0-9][a-z0-9-]*$
              endpoint:
                type: string
                pattern: ^\/.+$
              endpoint_version:
                type: integer
                exclusiveMinimum: 0
              status:
                type: string
                enum:
                  - QUEUED
                  - RUNNING
                  - COMPLETED
                  - FAILED
                  - STOPPED
                description: >-
                  QUEUED ou RUNNING: ainda em andamento. COMPLETED: uma resposta
                  do provedor de dados está disponível, incluindo respostas não
                  2xx. FAILED: consulte `failure`. STOPPED: interrompido antes
                  do despacho. Leia charge_usd separadamente de status.
              failure:
                anyOf:
                  - type: object
                    properties:
                      kind:
                        type: string
                        enum:
                          - TIMED_OUT
                          - INTERNAL
                      message:
                        type: string
                    required:
                      - kind
                      - message
                    additionalProperties: false
                  - type: 'null'
                description: >-
                  Motivo da falha do Run. Não nulo somente quando status é
                  FAILED.
              input:
                type: object
                properties:
                  omitted:
                    type: boolean
                    enum:
                      - true
                required:
                  - omitted
                additionalProperties: false
              output:
                type: object
                properties:
                  omitted:
                    type: boolean
                    enum:
                      - true
                required:
                  - omitted
                additionalProperties: false
              provider_response:
                anyOf:
                  - type: object
                    properties:
                      http_status:
                        type: integer
                        minimum: 100
                        maximum: 599
                        description: >-
                          Status HTTP retornado pelo provedor de dados.
                          Verifique-o mesmo quando o Run estiver COMPLETED.
                    required:
                      - http_status
                    additionalProperties: false
                  - type: 'null'
              charge_usd:
                anyOf:
                  - type: string
                    pattern: ^(0|[1-9]\d*)\.(\d{2}|\d{2}\d{0,3}[1-9])$
                    description: >-
                      String decimal exata em USD (mínimo de 2 e máximo de 6
                      casas decimais, com uma única grafia canônica). Some
                      usando aritmética decimal ou multiplique por 10^6 — nunca
                      use números de ponto flutuante.
                  - type: 'null'
                description: >-
                  Cobrança final como uma string decimal exata em USD. Nulo
                  enquanto estiver QUEUED ou RUNNING. Um Run FAILED pode ter uma
                  cobrança diferente de zero conforme o Price do Endpoint.
              charge_basis:
                anyOf:
                  - type: object
                    properties:
                      clause:
                        type: string
                        enum:
                          - rule
                          - NO_RESULT
                          - PROVIDER_ERROR
                          - TIMED_OUT
                          - INTERNAL
                      quantity:
                        anyOf:
                          - type: integer
                            minimum: 0
                          - type: 'null'
                    required:
                      - clause
                      - quantity
                    additionalProperties: false
                  - type: 'null'
                description: >-
                  Cláusula de Price usada para calcular a cobrança. Nulo antes
                  da liquidação ou quando nenhuma tentativa com o provedor de
                  dados foi feita.
              stoppable:
                type: boolean
                description: >-
                  Indica se uma solicitação de interrupção pode ser aceita no
                  momento. Isso não garante que o Run possa ser interrompido
                  antes do despacho.
              stop_requested_at:
                anyOf:
                  - type: string
                    description: carimbo de data e hora UTC ISO-8601
                    format: date-time
                  - type: 'null'
                description: >-
                  Momento em que uma interrupção foi solicitada. O Run ainda
                  pode continuar se o despacho já tiver começado.
              created_at:
                type: string
                description: carimbo de data e hora UTC ISO-8601
                format: date-time
              started_at:
                anyOf:
                  - type: string
                    description: carimbo de data e hora UTC ISO-8601
                    format: date-time
                  - type: 'null'
              completed_at:
                anyOf:
                  - type: string
                    description: carimbo de data e hora UTC ISO-8601
                    format: date-time
                  - type: 'null'
              task_id:
                anyOf:
                  - type: string
                  - type: 'null'
              metadata:
                type: object
                additionalProperties:
                  type: string
                  minLength: 1
                  maxLength: 500
                maxProperties: 20
                propertyNames:
                  type: string
                  pattern: ^[a-z][a-z0-9_]{0,39}$
                description: >-
                  Seus campos de acompanhamento armazenados. Use-os para filtrar
                  Runs. Eles nunca são enviados ao provedor de dados nem afetam
                  o roteamento, o Price ou a idempotência.


                  - Até 20 chaves: letras minúsculas, dígitos e sublinhados;
                  comece com uma letra; no máximo 40 caracteres.

                  - Valores: strings de 1–500 caracteres.

                  - user_id: o ID opaco do seu usuário final, nunca o endereço
                  de e-mail ou o nome dele.
            required:
              - id
              - run_url
              - provider
              - endpoint
              - endpoint_version
              - status
              - failure
              - input
              - output
              - provider_response
              - charge_usd
              - charge_basis
              - stoppable
              - stop_requested_at
              - created_at
              - started_at
              - completed_at
              - task_id
              - metadata
            additionalProperties: false
        result_url:
          type: string
          description: >-
            Caminho de URL autenticado e somente leitura para consultar este
            resultado normalizado e a cobrança total. Use com a origem da API.
            Não cria Runs nem retoma o fallback. GET /v1/runs/:id ainda retorna
            o Run nativo e individual.
      required:
        - id
        - run_url
        - provider
        - endpoint
        - endpoint_version
        - status
        - failure
        - input
        - output
        - provider_response
        - charge_usd
        - charge_basis
        - stoppable
        - stop_requested_at
        - created_at
        - started_at
        - completed_at
        - task_id
        - metadata
        - action
        - result_status
        - error
        - runs
        - result_url
      additionalProperties: false
    ValidationFailedEncoded:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - validation_failed
            message:
              type: string
            reason:
              anyOf:
                - type: string
                - type: 'null'
            control:
              anyOf:
                - type: string
                - type: 'null'
            retry_after_ms:
              anyOf:
                - anyOf:
                    - type: integer
                    - type: 'null'
                - type: 'null'
            details:
              anyOf:
                - type: object
                - type: 'null'
          required:
            - code
            - message
          additionalProperties: false
        request_id:
          type: string
      required:
        - error
        - request_id
      additionalProperties: false
    IdempotencyKeyRequiredEncoded:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - idempotency_key_required
            message:
              type: string
            reason:
              anyOf:
                - type: string
                - type: 'null'
            control:
              anyOf:
                - type: string
                - type: 'null'
            retry_after_ms:
              anyOf:
                - anyOf:
                    - type: integer
                    - type: 'null'
                - type: 'null'
            details:
              anyOf:
                - type: object
                - type: 'null'
          required:
            - code
            - message
          additionalProperties: false
        request_id:
          type: string
      required:
        - error
        - request_id
      additionalProperties: false
    UnauthorizedEncoded:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - unauthorized
            message:
              type: string
            reason:
              anyOf:
                - type: string
                - type: 'null'
            control:
              anyOf:
                - type: string
                - type: 'null'
            retry_after_ms:
              anyOf:
                - anyOf:
                    - type: integer
                    - type: 'null'
                - type: 'null'
            details:
              anyOf:
                - type: object
                - type: 'null'
          required:
            - code
            - message
          additionalProperties: false
        request_id:
          type: string
      required:
        - error
        - request_id
      additionalProperties: false
    InsufficientBalanceEncoded:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - insufficient_balance
            message:
              type: string
            reason:
              anyOf:
                - type: string
                - type: 'null'
            control:
              anyOf:
                - type: string
                - type: 'null'
            retry_after_ms:
              anyOf:
                - anyOf:
                    - type: integer
                    - type: 'null'
                - type: 'null'
            details:
              anyOf:
                - type: object
                - type: 'null'
          required:
            - code
            - message
          additionalProperties: false
        request_id:
          type: string
      required:
        - error
        - request_id
      additionalProperties: false
    EndpointNotPermittedEncoded:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - endpoint_not_permitted
            message:
              type: string
            reason:
              anyOf:
                - type: string
                - type: 'null'
            control:
              anyOf:
                - type: string
                - type: 'null'
            retry_after_ms:
              anyOf:
                - anyOf:
                    - type: integer
                    - type: 'null'
                - type: 'null'
            details:
              anyOf:
                - type: object
                - type: 'null'
          required:
            - code
            - message
          additionalProperties: false
        request_id:
          type: string
      required:
        - error
        - request_id
      additionalProperties: false
    ForbiddenEncoded:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - forbidden
            message:
              type: string
            reason:
              anyOf:
                - type: string
                - type: 'null'
            control:
              anyOf:
                - type: string
                - type: 'null'
            retry_after_ms:
              anyOf:
                - anyOf:
                    - type: integer
                    - type: 'null'
                - type: 'null'
            details:
              anyOf:
                - type: object
                - type: 'null'
          required:
            - code
            - message
          additionalProperties: false
        request_id:
          type: string
      required:
        - error
        - request_id
      additionalProperties: false
    IdempotencyConflictEncoded:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - idempotency_conflict
            message:
              type: string
            reason:
              anyOf:
                - type: string
                - type: 'null'
            control:
              anyOf:
                - type: string
                - type: 'null'
            retry_after_ms:
              anyOf:
                - anyOf:
                    - type: integer
                    - type: 'null'
                - type: 'null'
            details:
              anyOf:
                - type: object
                - type: 'null'
          required:
            - code
            - message
          additionalProperties: false
        request_id:
          type: string
      required:
        - error
        - request_id
      additionalProperties: false
    RateLimitedEncoded:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - rate_limited
            message:
              type: string
            reason:
              anyOf:
                - type: string
                - type: 'null'
            control:
              anyOf:
                - type: string
                - type: 'null'
            retry_after_ms:
              anyOf:
                - anyOf:
                    - type: integer
                    - type: 'null'
                - type: 'null'
            details:
              anyOf:
                - type: object
                - type: 'null'
          required:
            - code
            - message
          additionalProperties: false
        request_id:
          type: string
      required:
        - error
        - request_id
      additionalProperties: false
    ServiceUnavailableEncoded:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              enum:
                - service_unavailable
            message:
              type: string
            reason:
              anyOf:
                - type: string
                - type: 'null'
            control:
              anyOf:
                - type: string
                - type: 'null'
            retry_after_ms:
              anyOf:
                - anyOf:
                    - type: integer
                    - type: 'null'
                - type: 'null'
            details:
              anyOf:
                - type: object
                - type: 'null'
          required:
            - code
            - message
          additionalProperties: false
        request_id:
          type: string
      required:
        - error
        - request_id
      additionalProperties: false
  securitySchemes:
    bearer:
      type: http
      scheme: Bearer

````

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