PodPitch

Find relevant podcasts without an account. Connect PodPitch for private campaigns and outreach.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
91%
Integridad del esquema
71%
Calidad de los nombres
96%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (2)

  • LOWTool 'archive_profile' description lacks action verben archive_profile
  • LOWTool 'unarchive_profile' description lacks action verben unarchive_profile

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~11,568Tokens (definiciones de herramientas)
~2.1 KBTamaño de respuesta típico
Impacto significativo en la atención (9.04% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "podpitch": {
      "url": "https://api.podpitch.com/v1/mcp"
    }
  }
}

Puntos de conexión remotos

https://api.podpitch.com/v1/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (51)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
⚪report_agent_bug(body)

Record a minimal technical PodPitch failure without an account. Report concrete tool failures once. Exclude credentials, personal data, pitches and conversations. Respect client approval. Returns a persisted report ID.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "additionalProperties": false,
      "properties": {
        "tool_name": {
          "maxLength": 120,
          "minLength": 1,
          "title": "Tool Name",
          "type": "string"
        },
        "summary": {
          "maxLength": 500,
          "minLength": 1,
          "title": "Summary",
          "type": "string"
        },
        "expected_behavior": {
          "maxLength": 4000,
          "minLength": 1,
          "title": "Expected Behavior",
          "type": "string"
        },
        "actual_behavior": {
          "maxLength": 4000,
          "minLength": 1,
          "title": "Actual Behavior",
          "type": "string"
        },
        "reproduction_steps": {
          "maxLength": 4000,
          "minLength": 1,
          "title": "Reproduction Steps",
          "type": "string"
        }
      },
      "required": [
        "tool_name",
        "summary",
        "expected_behavior",
        "actual_behavior",
        "reproduction_steps"
      ],
      "title": "AgentFeedback",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false
}
🟢search_podcasts(query, limit)

Find active podcasts by topic or name. No account needed. Returns public show information and listening links, never contact addresses.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 200
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "default": 5
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "podcasts": {
      "items": {
        "$ref": "#/$defs/PublicPodcast"
      },
      "title": "Podcasts",
      "type": "array"
    }
  },
  "required": [
    "podcasts"
  ],
  "$defs": {
    "PublicPodcast": {
      "additionalProperties": false,
      "properties": {
        "id": {
          "title": "Id",
          "type": "string"
        },
        "title": {
          "title": "Title",
          "type": "string"
        },
        "description": {
          "title": "Description",
          "type": "string"
        },
        "listening_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Listening Url"
        },
        "category": {
          "title": "Category",
          "type": "string"
        },
        "language": {
          "title": "Language",
          "type": "string"
        },
        "has_guests": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Has Guests"
        },
        "currently_booking_guests": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unknown unless dated current booking evidence exists. A guest format flag does not verify current availability.",
          "title": "Currently Booking Guests"
        },
        "estimated_monthly_listeners": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Audience proxy: four times the catalog weekly download estimate. Not verified unique listeners.",
          "title": "Estimated Monthly Listeners"
        },
        "total_social_followers": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Catalog social follower total; may overlap across platforms. Missing values are unknown, not zero.",
          "title": "Total Social Followers"
        },
        "catalog_last_updated": {
          "anyOf": [
            {
              "format": "date",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Catalog Last Updated"
        },
        "catalog_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Catalog Url"
        },
        "image_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Image Url"
        },
        "rss_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Rss Url"
        },
        "spotify_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Spotify Url"
        },
        "itunes_rating_us": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Itunes Rating Us"
        },
        "itunes_review_count_us": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Itunes Review Count Us"
        },
        "host": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Host"
        },
        "country": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Country"
        },
        "genres": {
          "items": {
            "type": "string"
          },
          "title": "Genres",
          "type": "array"
        },
        "episode_count": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Episode Count"
        },
        "episodes_last_month": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Episodes Last Month"
        },
        "catalog_episode_title": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Catalog Episode Title"
        },
        "catalog_episode_description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Catalog Episode Description"
        },
        "catalog_episode_date": {
          "anyOf": [
            {
              "format": "date",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Catalog Episode Date"
        },
        "estimated_weekly_downloads": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Catalog weekly download estimate, not verified unique listeners.",
          "title": "Estimated Weekly Downloads"
        }
      },
      "required": [
        "id",
        "title",
        "description",
        "listening_url",
        "category",
        "language"
      ],
      "title": "PublicPodcast",
      "type": "object"
    }
  },
  "title": "PodcastResults"
}
🟢get_podcast_details(podcast_id)

Read public details for a podcast from search. No account or contact addresses.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "podcast_id": {
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]{1,80}$"
    }
  },
  "required": [
    "podcast_id"
  ],
  "additionalProperties": false
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "podcast": {
      "$ref": "#/$defs/PublicPodcast"
    }
  },
  "required": [
    "podcast"
  ],
  "$defs": {
    "PublicPodcast": {
      "additionalProperties": false,
      "properties": {
        "id": {
          "title": "Id",
          "type": "string"
        },
        "title": {
          "title": "Title",
          "type": "string"
        },
        "description": {
          "title": "Description",
          "type": "string"
        },
        "listening_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Listening Url"
        },
        "category": {
          "title": "Category",
          "type": "string"
        },
        "language": {
          "title": "Language",
          "type": "string"
        },
        "has_guests": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Has Guests"
        },
        "currently_booking_guests": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Unknown unless dated current booking evidence exists. A guest format flag does not verify current availability.",
          "title": "Currently Booking Guests"
        },
        "estimated_monthly_listeners": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Audience proxy: four times the catalog weekly download estimate. Not verified unique listeners.",
          "title": "Estimated Monthly Listeners"
        },
        "total_social_followers": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Catalog social follower total; may overlap across platforms. Missing values are unknown, not zero.",
          "title": "Total Social Followers"
        },
        "catalog_last_updated": {
          "anyOf": [
            {
              "format": "date",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Catalog Last Updated"
        },
        "catalog_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Catalog Url"
        },
        "image_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Image Url"
        },
        "rss_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Rss Url"
        },
        "spotify_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Spotify Url"
        },
        "itunes_rating_us": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Itunes Rating Us"
        },
        "itunes_review_count_us": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Itunes Review Count Us"
        },
        "host": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Host"
        },
        "country": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Country"
        },
        "genres": {
          "items": {
            "type": "string"
          },
          "title": "Genres",
          "type": "array"
        },
        "episode_count": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Episode Count"
        },
        "episodes_last_month": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Episodes Last Month"
        },
        "catalog_episode_title": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Catalog Episode Title"
        },
        "catalog_episode_description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Catalog Episode Description"
        },
        "catalog_episode_date": {
          "anyOf": [
            {
              "format": "date",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Catalog Episode Date"
        },
        "estimated_weekly_downloads": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Catalog weekly download estimate, not verified unique listeners.",
          "title": "Estimated Weekly Downloads"
        }
      },
      "required": [
        "id",
        "title",
        "description",
        "listening_url",
        "category",
        "language"
      ],
      "title": "PublicPodcast",
      "type": "object"
    }
  },
  "title": "PodcastDetails"
}
🟢get_connected_account

Return the account represented by this connection, with a stable opaque profile ID and display email.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false,
  "$defs": {}
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "pattern": "\\S"
    },
    "email": {
      "type": "string"
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟡create_podcast_campaign(body)

Create a podcast campaign in Off mode using a team profile and connected senders. Existing plan and first-campaign setup checks apply.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/CreatePodcastCampaign",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "CreatePodcastCampaign": {
      "properties": {
        "name": {
          "type": "string",
          "maxLength": 200,
          "minLength": 1,
          "title": "Name"
        },
        "profile_id": {
          "type": "integer",
          "minimum": 1,
          "title": "Profile Id"
        },
        "from_email": {
          "items": {
            "type": "string",
            "format": "email"
          },
          "type": "array",
          "maxItems": 20,
          "minItems": 1,
          "title": "From Email"
        },
        "custom_instruction": {
          "type": "string",
          "maxLength": 20000,
          "title": "Custom Instruction",
          "default": ""
        },
        "matching_blurb": {
          "type": "string",
          "maxLength": 10000,
          "title": "Matching Blurb",
          "default": ""
        },
        "sources": {
          "anyOf": [
            {
              "items": {
                "type": "string",
                "enum": [
                  "podcast",
                  "journalist",
                  "newsletter"
                ]
              },
              "type": "array",
              "maxItems": 3,
              "minItems": 1
            },
            {
              "type": "null"
            }
          ],
          "title": "Sources"
        },
        "subject_lines": {
          "items": {
            "type": "string",
            "maxLength": 500,
            "minLength": 1
          },
          "type": "array",
          "maxItems": 10,
          "title": "Subject Lines"
        }
      },
      "additionalProperties": false,
      "type": "object",
      "required": [
        "name",
        "profile_id",
        "from_email"
      ],
      "title": "CreatePodcastCampaign"
    }
  }
}
🟢get_campaign(campaign_id)

Read your team's campaign and its settings.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "campaign_id": {
      "type": "integer",
      "title": "Campaign Id"
    }
  },
  "required": [
    "campaign_id"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🔴update_campaign(campaign_id, body)

Update campaign name, writing, follow-up, and tracking settings. Scheduling uses schedule_campaign.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "campaign_id": {
      "type": "integer",
      "title": "Campaign Id"
    },
    "body": {
      "$ref": "#/$defs/CampaignSettings",
      "type": "object"
    }
  },
  "required": [
    "campaign_id",
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "CampaignSettings": {
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 200,
              "minLength": 1
            },
            {
              "type": "null"
            }
          ],
          "title": "Name"
        },
        "custom_instruction": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 20000
            },
            {
              "type": "null"
            }
          ],
          "title": "Custom Instruction"
        },
        "matching_blurb": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 10000
            },
            {
              "type": "null"
            }
          ],
          "title": "Matching Blurb"
        },
        "email_length": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "small",
                "medium",
                "large"
              ]
            },
            {
              "type": "null"
            }
          ],
          "title": "Email Length"
        },
        "follow_up": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Follow Up"
        },
        "follow_up_2": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Follow Up 2"
        },
        "exclude_tracking": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Exclude Tracking"
        },
        "exclude_html_format": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Exclude Html Format"
        },
        "include_recent_episode_ref": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Include Recent Episode Ref"
        }
      },
      "additionalProperties": false,
      "type": "object",
      "title": "CampaignSettings"
    }
  }
}
🔴edit_pitch_draft(campaign_id, entity_id, body)

Edit a saved, unscheduled pitch at its expected stage. Refresh before editing; scheduled messages use edit_upcoming_send.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "campaign_id": {
      "type": "integer",
      "title": "Campaign Id"
    },
    "entity_id": {
      "type": "string",
      "title": "Entity Id"
    },
    "body": {
      "$ref": "#/$defs/PitchEdit",
      "type": "object"
    }
  },
  "required": [
    "campaign_id",
    "entity_id",
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "PitchEdit": {
      "properties": {
        "expected_stage": {
          "type": "integer",
          "maximum": 5,
          "minimum": 0,
          "title": "Expected Stage"
        },
        "content": {
          "type": "string",
          "maxLength": 30000,
          "minLength": 1,
          "title": "Content"
        },
        "subject": {
          "type": "string",
          "maxLength": 500,
          "minLength": 1,
          "title": "Subject"
        }
      },
      "additionalProperties": false,
      "type": "object",
      "required": [
        "expected_stage",
        "content",
        "subject"
      ],
      "title": "PitchEdit"
    }
  }
}
🟢list_campaigns(limit, before_id)

List up to 50 campaign summaries, newest first. Use next_before_id as before_id for the next page. Read complete settings with get_campaign.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "maximum": 50,
      "minimum": 1,
      "default": 20,
      "title": "Limit"
    },
    "before_id": {
      "anyOf": [
        {
          "type": "integer",
          "maximum": 9223372036854776000,
          "minimum": 1
        },
        {
          "type": "null"
        }
      ],
      "title": "Before Id"
    }
  },
  "required": [],
  "additionalProperties": false,
  "$defs": {}
}
🟢list_profiles

List your team's profiles.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false,
  "$defs": {}
}
🟡create_profile(body)

Create a profile for your team.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/CreateProfileRequest",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "CreateProfileRequest": {
      "properties": {
        "name": {
          "type": "string",
          "title": "Name"
        },
        "blurb": {
          "type": "string",
          "title": "Blurb"
        },
        "database": {
          "type": "string",
          "title": "Database"
        },
        "key_points": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Key Points"
        },
        "key_points_podcast": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Key Points Podcast"
        },
        "key_points_journalist": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Key Points Journalist"
        },
        "key_points_newsletter": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Key Points Newsletter"
        },
        "company": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Company"
        },
        "role": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Role"
        },
        "avatar_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Avatar Url"
        },
        "linkedin_url": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Linkedin Url"
        },
        "audience": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Audience"
        },
        "profile_signature": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Profile Signature"
        },
        "type": {
          "type": "string",
          "title": "Type",
          "default": "person"
        },
        "social_reach": {
          "type": "boolean",
          "title": "Social Reach",
          "default": false
        },
        "followers": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Followers"
        },
        "smart_filter": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Smart Filter"
        },
        "signature_use_case": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Signature Use Case"
        },
        "sender_relationship": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sender Relationship"
        },
        "linkedin_company_json": {
          "anyOf": [
            {
              "additionalProperties": true,
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "title": "Linkedin Company Json"
        },
        "linkedin_profile_json": {
          "anyOf": [
            {
              "additionalProperties": true,
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "title": "Linkedin Profile Json"
        },
        "social_channels": {
          "anyOf": [
            {
              "items": {},
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Social Channels"
        },
        "different_bios": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Different Bios"
        },
        "bio_podcast": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Podcast"
        },
        "bio_journalist": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Journalist"
        },
        "bio_newsletter": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Newsletter"
        },
        "bio_grade": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Grade"
        },
        "bio_grade_reasoning": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Grade Reasoning"
        },
        "bio_graded_at": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Graded At"
        },
        "bio_grade_podcast": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Grade Podcast"
        },
        "bio_grade_reasoning_podcast": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Grade Reasoning Podcast"
        },
        "bio_graded_at_podcast": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Graded At Podcast"
        },
        "bio_grade_journalist": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Grade Journalist"
        },
        "bio_grade_reasoning_journalist": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Grade Reasoning Journalist"
        },
        "bio_graded_at_journalist": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Graded At Journalist"
        },
        "bio_grade_newsletter": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Grade Newsletter"
        },
        "bio_grade_reasoning_newsletter": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Grade Reasoning Newsletter"
        },
        "bio_graded_at_newsletter": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bio Graded At Newsletter"
        },
        "portfolio_visibility": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Portfolio Visibility"
        },
        "search_angle_guidance": {
          "anyOf": [
            {
              "$ref": "#/$defs/SearchAngleGuidance"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "type": "object",
      "required": [
        "name",
        "blurb",
        "database"
      ],
      "title": "CreateProfileRequest",
      "description": "Model for creating a new profile"
    },
    "SearchAngleGuidance": {
      "properties": {
        "topics_answer": {
          "type": "string",
          "maxLength": 4000,
          "title": "Topics Answer",
          "default": ""
        },
        "audiences_answer": {
          "type": "string",
          "maxLength": 4000,
          "title": "Audiences Answer",
          "default": ""
        }
      },
      "type": "object",
      "title": "SearchAngleGuidance"
    }
  }
}
🔴archive_profile(id)

Archive a profile belonging to your team.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "title": "Id"
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false,
  "$defs": {}
}
⚪unarchive_profile(id)

Restore an archived profile.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "title": "Id"
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🟢search_account_podcasts(body)

Search podcasts with your account's filters and search allowance.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/PodcastSearchParams",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "PodcastSearchParams": {
      "properties": {
        "q": {
          "type": "string",
          "title": "Q"
        },
        "page": {
          "type": "integer",
          "title": "Page"
        },
        "per_page": {
          "type": "integer",
          "maximum": 50,
          "title": "Per Page",
          "default": 25
        },
        "query_by": {
          "type": "string",
          "title": "Query By",
          "default": "title, description"
        },
        "sort_by": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Sort By"
        },
        "worthy": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Worthy",
          "description": "Indicates if the podcast is considered active or idle"
        },
        "exclude": {
          "type": "boolean",
          "title": "Exclude",
          "default": false
        },
        "profile_id": {
          "type": "integer",
          "title": "Profile Id"
        },
        "primary_genre": {
          "anyOf": [
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Primary Genre"
        },
        "frequency": {
          "anyOf": [
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Frequency"
        },
        "listenership": {
          "anyOf": [
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Listenership"
        },
        "language": {
          "anyOf": [
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Language"
        }
      },
      "type": "object",
      "required": [
        "q",
        "page"
      ],
      "title": "PodcastSearchParams"
    }
  }
}
🟢get_account_podcast(podcast_id)

Read a podcast's full account-accessible record.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "podcast_id": {
      "type": "string",
      "title": "Podcast Id"
    }
  },
  "required": [
    "podcast_id"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🟢get_campaign_drafts(campaign_id, limit, offset, entity_id)

Read saved drafts for any campaign type, including podcast campaigns. Returns all six email stages, generation/error and pause/send state. Use next_offset as offset for the next page; use entity_id for a specific draft. A queued acknowledgement is not completion; read saved content and is_regenerating to verify.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "campaign_id": {
      "type": "integer",
      "title": "Campaign Id"
    },
    "limit": {
      "type": "integer",
      "maximum": 50,
      "minimum": 1,
      "default": 20,
      "title": "Limit"
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "title": "Offset"
    },
    "entity_id": {
      "anyOf": [
        {
          "type": "string",
          "minLength": 1,
          "maxLength": 500
        },
        {
          "type": "null"
        }
      ],
      "title": "Entity Id"
    }
  },
  "required": [
    "campaign_id"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🟢get_campaign_draft_previews(campaign_id, database, limit)

Read pitch previews for a campaign.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "campaign_id": {
      "type": "integer",
      "title": "Campaign Id"
    },
    "database": {
      "type": "string",
      "title": "Database"
    },
    "limit": {
      "type": "integer",
      "maximum": 25,
      "minimum": 1,
      "default": 10,
      "title": "Limit"
    }
  },
  "required": [
    "campaign_id",
    "database"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🟢get_campaign_audit(campaign_id, limit, offset)

Read the change history of your campaign.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "campaign_id": {
      "type": "integer",
      "title": "Campaign Id"
    },
    "limit": {
      "type": "integer",
      "maximum": 200,
      "minimum": 1,
      "default": 50,
      "title": "Limit"
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "title": "Offset"
    }
  },
  "required": [
    "campaign_id"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🟢get_profile_audit(profile_id, limit, offset)

Read the change history of your profile.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "profile_id": {
      "type": "integer",
      "title": "Profile Id"
    },
    "limit": {
      "type": "integer",
      "maximum": 200,
      "minimum": 1,
      "default": 50,
      "title": "Limit"
    },
    "offset": {
      "type": "integer",
      "minimum": 0,
      "default": 0,
      "title": "Offset"
    }
  },
  "required": [
    "profile_id"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🟢get_subject_results(campaign_id)

Read subject line performance for your campaign.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "campaign_id": {
      "type": "integer",
      "title": "Campaign Id"
    }
  },
  "required": [
    "campaign_id"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🟡add_contacts_to_campaign(body)

Add selected contacts to your campaign through the existing duplicate checks.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/AddToCampaign",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "AddToCampaign": {
      "properties": {
        "entity_ids": {
          "anyOf": [
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Entity Ids"
        },
        "media_list": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Media List"
        },
        "campaign_id": {
          "type": "integer",
          "title": "Campaign Id"
        },
        "preview": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Preview",
          "default": false
        },
        "user_emails": {
          "anyOf": [
            {
              "items": {
                "type": "string",
                "format": "email"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "User Emails"
        },
        "team_id": {
          "anyOf": [
            {
              "type": "string",
              "format": "uuid"
            },
            {
              "type": "null"
            }
          ],
          "title": "Team Id"
        },
        "database": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Database"
        },
        "from_monitor": {
          "type": "boolean",
          "title": "From Monitor",
          "default": false
        }
      },
      "type": "object",
      "required": [
        "campaign_id"
      ],
      "title": "AddToCampaign"
    }
  }
}
🔴send_pitch(body)

Send a pitch through PodPitch's existing authorization, plan, campaign-mode, and daily pitch limits. Sends an email.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "type": "object",
      "properties": {
        "campaign_id": {
          "type": "integer",
          "minimum": 1
        },
        "entity_id": {
          "type": "string",
          "minLength": 1,
          "maxLength": 200
        },
        "requested_stage": {
          "type": "integer",
          "minimum": 0,
          "maximum": 5
        }
      },
      "required": [
        "campaign_id",
        "entity_id",
        "requested_stage"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🔴schedule_campaign(body)

Schedule campaign pitches through the existing campaign and pitch-limit checks.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/EmailSchedule",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "EmailSchedule": {
      "properties": {
        "campaign_id": {
          "type": "integer",
          "title": "Campaign Id"
        },
        "team_id": {
          "type": "string",
          "format": "uuid",
          "title": "Team Id"
        },
        "entity_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Entity Id"
        },
        "follow_up_only": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Follow Up Only",
          "default": false
        },
        "pause": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Pause",
          "default": false
        },
        "datetime": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datetime"
        },
        "start_timestampz": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Start Timestampz"
        },
        "timezone": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Timezone"
        },
        "add_more": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Add More",
          "default": false
        },
        "only_manual": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Only Manual",
          "default": false
        },
        "asap": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Asap",
          "default": false
        }
      },
      "type": "object",
      "required": [
        "campaign_id",
        "team_id"
      ],
      "title": "EmailSchedule"
    }
  }
}
🟢get_campaign_schedule(team_id, campaign_id, page, page_size, profile_id, ...)

Read scheduled campaign sends.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "team_id": {
      "type": "string",
      "format": "uuid",
      "title": "Team Id"
    },
    "campaign_id": {
      "anyOf": [
        {
          "type": "integer"
        },
        {
          "type": "null"
        }
      ],
      "title": "Campaign Id"
    },
    "page": {
      "type": "integer",
      "default": 1,
      "title": "Page"
    },
    "page_size": {
      "type": "integer",
      "default": 10,
      "title": "Page Size"
    },
    "profile_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Profile Id"
    },
    "entity_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Entity Id"
    }
  },
  "required": [
    "team_id"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🔴pause_campaign_schedule(body)

Pause pending sends for your campaign.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/EmailSchedule",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "EmailSchedule": {
      "properties": {
        "campaign_id": {
          "type": "integer",
          "title": "Campaign Id"
        },
        "team_id": {
          "type": "string",
          "format": "uuid",
          "title": "Team Id"
        },
        "entity_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Entity Id"
        },
        "follow_up_only": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Follow Up Only",
          "default": false
        },
        "pause": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Pause",
          "default": false
        },
        "datetime": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datetime"
        },
        "start_timestampz": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Start Timestampz"
        },
        "timezone": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Timezone"
        },
        "add_more": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Add More",
          "default": false
        },
        "only_manual": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Only Manual",
          "default": false
        },
        "asap": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Asap",
          "default": false
        }
      },
      "type": "object",
      "required": [
        "campaign_id",
        "team_id"
      ],
      "title": "EmailSchedule"
    }
  }
}
🔴disable_campaign_schedule(body)

Disable pending sends for your campaign.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/EmailSchedule",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "EmailSchedule": {
      "properties": {
        "campaign_id": {
          "type": "integer",
          "title": "Campaign Id"
        },
        "team_id": {
          "type": "string",
          "format": "uuid",
          "title": "Team Id"
        },
        "entity_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Entity Id"
        },
        "follow_up_only": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Follow Up Only",
          "default": false
        },
        "pause": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Pause",
          "default": false
        },
        "datetime": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Datetime"
        },
        "start_timestampz": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Start Timestampz"
        },
        "timezone": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Timezone"
        },
        "add_more": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Add More",
          "default": false
        },
        "only_manual": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Only Manual",
          "default": false
        },
        "asap": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Asap",
          "default": false
        }
      },
      "type": "object",
      "required": [
        "campaign_id",
        "team_id"
      ],
      "title": "EmailSchedule"
    }
  }
}
🔴set_campaign_mode(body)

Set a campaign Off or Manual through the existing mode checks. MagicPitch does not allow Manual.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/CampaignStatusRequest",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "CampaignStatusRequest": {
      "properties": {
        "campaign_id": {
          "type": "integer",
          "title": "Campaign Id"
        },
        "team_id": {
          "type": "string",
          "format": "uuid",
          "title": "Team Id"
        },
        "status": {
          "type": "string",
          "title": "Status"
        }
      },
      "type": "object",
      "required": [
        "campaign_id",
        "team_id",
        "status"
      ],
      "title": "CampaignStatusRequest"
    }
  }
}
🟢list_inbox_threads(from_email, emails, profile_id, profile_ids, read_status, ...)

Search or list your team's inbox threads with pagination.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "from_email": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "From Email"
    },
    "emails": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Emails"
    },
    "profile_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Profile Id"
    },
    "profile_ids": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Profile Ids"
    },
    "read_status": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Read Status"
    },
    "starred": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Starred"
    },
    "hide_replied": {
      "anyOf": [
        {
          "type": "boolean"
        },
        {
          "type": "null"
        }
      ],
      "title": "Hide Replied"
    },
    "categories": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Categories"
    },
    "folder": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Folder"
    },
    "thread_scope": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Thread Scope"
    },
    "q": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Q"
    },
    "limit": {
      "type": "integer",
      "default": 50,
      "title": "Limit"
    },
    "offset": {
      "type": "integer",
      "default": 0,
      "title": "Offset"
    },
    "cursor": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Cursor"
    }
  },
  "required": [],
  "additionalProperties": false,
  "$defs": {}
}
🟢read_inbox_thread(email, thread_id)

Read a thread in a mailbox belonging to your team.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "title": "Email"
    },
    "thread_id": {
      "type": "string",
      "title": "Thread Id"
    }
  },
  "required": [
    "email",
    "thread_id"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🔴reply_to_inbox_thread(body)

Send a reply in a thread belonging to your team. Sends an email.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/ReplyRequest",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "ReplyRequest": {
      "properties": {
        "from_email": {
          "type": "string",
          "title": "From Email"
        },
        "thread_id": {
          "type": "string",
          "title": "Thread Id"
        },
        "body": {
          "type": "string",
          "title": "Body"
        },
        "subject": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Subject"
        },
        "to_address": {
          "type": "string",
          "title": "To Address"
        },
        "cc": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Cc"
        },
        "bcc": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Bcc"
        },
        "attachments": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/AttachmentRequest"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Attachments"
        },
        "timezone_name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Timezone Name"
        },
        "draft": {
          "anyOf": [
            {
              "$ref": "#/$defs/ReplyDraftContext"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "type": "object",
      "required": [
        "from_email",
        "thread_id",
        "body",
        "to_address"
      ],
      "title": "ReplyRequest"
    },
    "ReplyDraftContext": {
      "properties": {
        "subject": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Subject"
        },
        "body": {
          "type": "string",
          "title": "Body"
        },
        "tone": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Tone"
        },
        "confidence": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "title": "Confidence"
        },
        "custom_prompt": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Custom Prompt"
        },
        "draft_instance_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Draft Instance Id"
        }
      },
      "type": "object",
      "required": [
        "body"
      ],
      "title": "ReplyDraftContext",
      "description": "The Magic Inbox AI draft the reply editor was prefilled with, as\noriginally generated. Sent by the frontend so the API can record the\ndraft-vs-sent diff (see inbox_reply_draft_outcomes).\n\ndraft_instance_id links this send to the apply-time row written by\nPOST /inbox/draft-applied, so the two capture points reconcile into one\nrow instead of double-counting."
    },
    "AttachmentRequest": {
      "properties": {
        "filename": {
          "type": "string",
          "title": "Filename"
        },
        "content": {
          "type": "string",
          "title": "Content"
        },
        "content_type": {
          "type": "string",
          "title": "Content Type"
        }
      },
      "type": "object",
      "required": [
        "filename",
        "content",
        "content_type"
      ],
      "title": "AttachmentRequest"
    }
  }
}
🔴mark_inbox_thread(body)

Mark a thread read, unread, starred, or archived.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/MarkRequest",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "MarkRequest": {
      "properties": {
        "thread_id": {
          "type": "string",
          "title": "Thread Id"
        },
        "email": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Email"
        },
        "archived": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Archived"
        },
        "read": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Read"
        },
        "starred": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Starred"
        }
      },
      "type": "object",
      "required": [
        "thread_id"
      ],
      "title": "MarkRequest"
    }
  }
}
🟢get_inbox_counts(thread_scope)

Read inbox status counts.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "thread_scope": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Thread Scope"
    }
  },
  "required": [],
  "additionalProperties": false,
  "$defs": {}
}
🟢list_inbox_labels

List your team's inbox labels.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false,
  "$defs": {}
}
🟡create_inbox_label(body)

Create an inbox label.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/InboxLabelCreate",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "InboxLabelCreate": {
      "properties": {
        "name": {
          "type": "string",
          "title": "Name"
        },
        "description": {
          "type": "string",
          "title": "Description"
        },
        "color": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Color"
        }
      },
      "type": "object",
      "required": [
        "name",
        "description"
      ],
      "title": "InboxLabelCreate"
    }
  }
}
🟢get_upcoming_sends(limit, offset, profile_ids, emails, types, ...)

Read upcoming sends for your team.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "default": 50,
      "title": "Limit"
    },
    "offset": {
      "type": "integer",
      "default": 0,
      "title": "Offset"
    },
    "profile_ids": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Profile Ids"
    },
    "emails": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Emails"
    },
    "types": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Types"
    },
    "q": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Q"
    }
  },
  "required": [],
  "additionalProperties": false,
  "$defs": {}
}
🔴cancel_upcoming_send(scheduler_id)

Cancel an upcoming send belonging to your team.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "scheduler_id": {
      "type": "integer",
      "title": "Scheduler Id"
    }
  },
  "required": [
    "scheduler_id"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🔴edit_upcoming_send(scheduler_id, body)

Edit an upcoming unsent message through existing validation.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "scheduler_id": {
      "type": "integer",
      "title": "Scheduler Id"
    },
    "body": {
      "$ref": "#/$defs/EditUpcomingSendRequest",
      "type": "object"
    }
  },
  "required": [
    "scheduler_id",
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "EditUpcomingSendRequest": {
      "properties": {
        "subject": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Subject"
        },
        "body": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Body"
        }
      },
      "type": "object",
      "title": "EditUpcomingSendRequest"
    }
  }
}
🔴reschedule_upcoming_send(scheduler_id, body)

Reschedule an upcoming send through existing scheduling validation.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "scheduler_id": {
      "type": "integer",
      "title": "Scheduler Id"
    },
    "body": {
      "$ref": "#/$defs/routes__inbox__router__RescheduleRequest",
      "type": "object"
    }
  },
  "required": [
    "scheduler_id",
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "routes__inbox__router__RescheduleRequest": {
      "properties": {
        "scheduled_at": {
          "type": "string",
          "title": "Scheduled At"
        }
      },
      "type": "object",
      "required": [
        "scheduled_at"
      ],
      "title": "RescheduleRequest"
    }
  }
}
🟢list_templates(type)

Read your team's writing templates.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "title": "Type"
    }
  },
  "required": [],
  "additionalProperties": false,
  "$defs": {}
}
🟡create_template(body)

Create a writing template.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/TemplateCreateBody",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "TemplateCreateBody": {
      "properties": {
        "email_num": {
          "type": "integer",
          "title": "Email Num"
        },
        "content": {
          "type": "string",
          "title": "Content"
        },
        "alias": {
          "type": "string",
          "title": "Alias"
        },
        "type": {
          "type": "string",
          "title": "Type"
        },
        "version": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Version"
        },
        "allow_smoothing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Allow Smoothing"
        }
      },
      "type": "object",
      "required": [
        "email_num",
        "content",
        "alias",
        "type"
      ],
      "title": "TemplateCreateBody"
    }
  }
}
🔴update_template(template_id, body)

Update a writing template belonging to your team.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "template_id": {
      "type": "integer",
      "title": "Template Id"
    },
    "body": {
      "$ref": "#/$defs/TemplateUpdateBody",
      "type": "object"
    }
  },
  "required": [
    "template_id",
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "TemplateUpdateBody": {
      "properties": {
        "email_num": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Email Num"
        },
        "content": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Content"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Alias"
        },
        "type": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Type"
        },
        "allow_smoothing": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Allow Smoothing"
        }
      },
      "type": "object",
      "title": "TemplateUpdateBody"
    }
  }
}
🔴delete_template(template_id)

Delete a writing template belonging to your team.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "template_id": {
      "type": "integer",
      "title": "Template Id"
    }
  },
  "required": [
    "template_id"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🟢list_media_lists

List your team's saved media lists.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false,
  "$defs": {}
}
🟢read_podcast_media_list(body)

Read a podcast media list belonging to your team.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/MediaList",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "MediaList": {
      "properties": {
        "list_id": {
          "type": "integer",
          "title": "List Id"
        },
        "sort_by": {
          "type": "string",
          "title": "Sort By"
        },
        "order_by": {
          "type": "string",
          "title": "Order By"
        },
        "filter": {
          "type": "string",
          "title": "Filter"
        },
        "page": {
          "type": "integer",
          "title": "Page",
          "default": 1
        },
        "per_page": {
          "type": "integer",
          "title": "Per Page",
          "default": 10
        }
      },
      "type": "object",
      "required": [
        "list_id"
      ],
      "title": "MediaList"
    }
  }
}
🟢list_excluded_contacts

Read your team's excluded contacts.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false,
  "$defs": {}
}
🟡exclude_contacts(body)

Add or update your team's contact exclusions.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/ExcludeList",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "ExcludeList": {
      "properties": {
        "entity_ids": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "title": "Entity Ids"
        },
        "team_id": {
          "type": "string",
          "format": "uuid",
          "title": "Team Id"
        }
      },
      "type": "object",
      "required": [
        "entity_ids",
        "team_id"
      ],
      "title": "ExcludeList"
    }
  }
}
🟢list_connected_senders

List connected sender accounts, connection status, and daily capacity. Never returns credentials.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false,
  "$defs": {}
}
🟢get_pitch_activity(user_id, profile_id, sent_email_id)

Read your team's recent pitch, reply, booking, and open counts.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "user_id": {
      "anyOf": [
        {
          "type": "string",
          "format": "uuid"
        },
        {
          "type": "null"
        }
      ],
      "title": "User Id"
    },
    "profile_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Profile Id"
    },
    "sent_email_id": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "title": "Sent Email Id"
    }
  },
  "required": [],
  "additionalProperties": false,
  "$defs": {}
}
🟢get_campaign_build_progress(campaign_id)

Read draft generation progress for your team's campaign.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "campaign_id": {
      "type": "integer",
      "title": "Campaign Id"
    }
  },
  "required": [
    "campaign_id"
  ],
  "additionalProperties": false,
  "$defs": {}
}
🔴rewrite_pitch_drafts(body)

Rewrite saved pitches or apply a template using the existing generation queue and team checks. Does not send emails.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/RewriteEnqueueBody",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "RewriteEnqueueBody": {
      "properties": {
        "user_emails": {
          "anyOf": [
            {
              "items": {
                "type": "string",
                "format": "email"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "User Emails"
        },
        "campaign_id": {
          "type": "integer",
          "title": "Campaign Id"
        },
        "campaign_ids": {
          "anyOf": [
            {
              "items": {
                "type": "integer"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Campaign Ids"
        },
        "database": {
          "type": "string",
          "enum": [
            "podcast",
            "guest",
            "journo",
            "journo_v2",
            "newsletter",
            "substack",
            "linkedin_exa",
            "linkedin_visitors"
          ],
          "title": "Database"
        },
        "entity_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "title": "Entity Id"
        },
        "template_id": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Template Id"
        },
        "email_index": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Email Index"
        },
        "rewrite_stages": {
          "anyOf": [
            {
              "items": {
                "type": "integer"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Rewrite Stages"
        },
        "include_edited": {
          "type": "boolean",
          "title": "Include Edited",
          "default": false
        },
        "edited": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Edited"
        }
      },
      "type": "object",
      "required": [
        "campaign_id",
        "database"
      ],
      "title": "RewriteEnqueueBody"
    }
  }
}
🔴generate_pitch_drafts(body)

Generate or replace saved pitch drafts for contacts in your campaign using existing limits and team checks. Can overwrite existing draft content, including with rewrite enabled. Read drafts first and obtain approval for replacement. Does not send emails.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "$ref": "#/$defs/UnifiedEnqueueRequest",
      "type": "object"
    }
  },
  "required": [
    "body"
  ],
  "additionalProperties": false,
  "$defs": {
    "UnifiedEnqueueRequest": {
      "properties": {
        "user_emails": {
          "anyOf": [
            {
              "items": {
                "type": "string",
                "format": "email"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "User Emails"
        },
        "team_id": {
          "anyOf": [
            {
              "type": "string",
              "format": "uuid"
            },
            {
              "type": "null"
            }
          ],
          "title": "Team Id"
        },
        "campaign_id": {
          "type": "integer",
          "title": "Campaign Id"
        },
        "database": {
          "type": "string",
          "enum": [
            "podcast",
            "journo",
            "journo_import",
            "journo_v2",
            "newsletter",
            "linkedin_exa",
            "linkedin_visitors",
            "guest"
          ],
          "title": "Database"
        },
        "entity_id": {
          "anyOf": [
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Entity Id"
        },
        "matches": {
          "anyOf": [
            {
              "items": {
                "additionalProperties": true,
                "type": "object"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "title": "Matches"
        },
        "outlet_source_id": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "title": "Outlet Source Id"
        },
        "metadata": {
          "anyOf": [
            {},
            {
              "type": "null"
            }
          ],
          "title": "Metadata"
        },
        "lazy_loading": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Lazy Loading",
          "default": true
        },
        "rewrite": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "title": "Rewrite",
          "default": false
        },
        "from_monitor": {
          "type": "boolean",
          "title": "From Monitor",
          "default": false
        },
        "pause_for_review": {
          "type": "boolean",
          "title": "Pause For Review",
          "default": false
        }
      },
      "type": "object",
      "required": [
        "campaign_id",
        "database"
      ],
      "title": "UnifiedEnqueueRequest",
      "description": "Unified request schema for all email generation enqueueing"
    }
  }
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada51 herramientas