# Edit articles Source: https://docs.genseo.co/articles/edit-articles Review optional Genseo drafts for clarity, structure, and on-page quality that models can cite. ## Overview Editing is a crucial step when you use optional content publishing. This guide covers clarity, structure, flow, on-page quality for citable pages, and formatting best practices. ## The Editing Process ### Why Edit Generated Content? Even AI-generated content benefits from human editing to: * **Ensure accuracy**: Verify facts and information * **Match brand voice**: Align content with your brand * **Improve clarity**: Make content more readable and understandable * **Improve on-page quality**: Fine-tune on-page fields * **Add expertise**: Include your unique insights and perspective ## Editing for Clarity Clear content is easier to read and understand, which improves user experience and readability. ### Simplify Language * **Use simple words**: Replace complex words with simpler alternatives when possible * **Shorten sentences**: Break long sentences into shorter, clearer ones * **Remove jargon**: Explain technical terms or replace them with accessible language * **Be direct**: Get to the point without unnecessary fluff ### Improve Readability * **Use active voice**: Prefer active voice over passive voice * **Vary sentence length**: Mix short and long sentences for rhythm * **Use transitions**: Connect ideas with transition words and phrases * **Break up text**: Use paragraphs, headings, and lists to break up dense text ### Check for Clarity Ask yourself: * Is this sentence clear and understandable? * Does this paragraph have a clear point? * Will readers understand this without prior knowledge? * Is the flow logical and easy to follow? ## Editing for Structure Well-structured content is easier to read and better for citable pages. ### Heading Structure Ensure proper heading hierarchy: * **H1**: Main title (one per article) * **H2**: Major sections * **H3**: Subsections within H2 sections * **H4+**: Further subdivisions as needed Maintain a logical heading hierarchy. Don't skip from H2 to H4—use H3 in between. ### Section Organization Organize content logically: 1. **Introduction**: Hook readers and introduce the topic 2. **Main content**: Develop the topic in clear sections 3. **Conclusion**: Summarize key points and provide next steps ### Use Lists and Formatting Break up text with: * **Bullet points**: For lists of items or features * **Numbered lists**: For step-by-step instructions * **Bold text**: For emphasis on key points * **Italic text**: For emphasis or foreign terms * **Code blocks**: For code examples or technical terms ## Editing for Flow Smooth flow keeps readers engaged and makes content easier to follow. ### Logical Progression Ensure content flows logically: * **Start broad, get specific**: Begin with general concepts, then dive into details * **Build on previous points**: Each section should build on the previous one * **Use transitions**: Connect ideas with transition words and phrases * **Maintain focus**: Stay on topic and avoid tangents ### Paragraph Structure Structure paragraphs effectively: * **One idea per paragraph**: Each paragraph should focus on one main idea * **Topic sentences**: Start paragraphs with clear topic sentences * **Supporting details**: Follow topic sentences with supporting details * **Concluding thoughts**: End paragraphs with a conclusion or transition ### Connection Between Sections Connect sections smoothly: * **Use transition sentences**: Bridge gaps between sections * **Reference previous sections**: Refer back to earlier points when relevant * **Preview coming sections**: Hint at what's coming next when helpful ## Editing for On-page quality on-page quality for AI citations ensures your content ranks well in search results. ### Keyword Placement Place keywords strategically: * **Title**: Include the primary keyword in the title * **H1**: Use the keyword in the H1 heading * **First paragraph**: Include the keyword early in the introduction * **Headings**: Use variations of the keyword in H2 and H3 headings * **Body**: Use the keyword naturally throughout the content * **Meta description**: Include the keyword in the meta description Don't overuse keywords. Focus on natural, readable content first, then optimize for citable pages. ### Internal Linking Add internal links strategically: * **Link to related content**: Link to other articles on your site * **Use descriptive anchor text**: Make anchor text descriptive and relevant * **Link naturally**: Place links where they make sense contextually * **Don't over-link**: Too many links can hurt readability and readability ### Meta Elements Optimize meta elements: * **Title tag**: Keep under 60 characters, include primary keyword * **Meta description**: Keep under 160 characters, include keyword and call-to-action * **Alt text**: Add descriptive alt text to images * **URL slug**: Use a clean, keyword-rich URL slug ## Formatting Best Practices Good formatting improves readability and user experience. ### Use Headings Effectively * **Clear, descriptive headings**: Make headings descriptive and informative * **Consistent style**: Use consistent heading styles throughout * **Proper hierarchy**: Maintain proper heading hierarchy (H1 → H2 → H3) ### Format Text * **Bold for emphasis**: Use bold to emphasize key points * **Italic for emphasis**: Use italic for subtle emphasis or foreign terms * **Code formatting**: Use code formatting for technical terms, code, or file names * **Avoid over-formatting**: Don't overuse formatting—it can be distracting ### Use Lists * **Bullet points**: For unordered lists (features, benefits, items) * **Numbered lists**: For ordered lists (steps, instructions, sequences) * **Parallel structure**: Keep list items parallel in structure and style * **Consistent formatting**: Use consistent formatting for all list items ### Add Images * **Relevant images**: Include images that support the content * **Descriptive alt text**: Add alt text to all images for accessibility and readability * **Proper sizing**: Ensure images are properly sized and optimized * **Captions**: Add captions when helpful for context ## Common Editing Issues ### Content Is Too Generic **Problem**: Content feels generic or lacks specific insights. **Solution**: * Add specific examples and case studies * Include your unique insights and expertise * Reference real-world scenarios * Add data and statistics when relevant ### Keyword over-optimization **Problem**: Content is over-optimized for citable pages, hurting readability. **Solution**: * Remove excessive keyword usage * Focus on natural, readable content * Use keyword variations instead of repeating the same keyword * Prioritize user experience over keyword stuffing optimization ### Poor Structure **Problem**: Content lacks clear structure or organization. **Solution**: * Add or improve headings * Reorganize content into logical sections * Use lists to break up dense text * Ensure proper heading hierarchy ### Inconsistent Tone **Problem**: Tone varies throughout the article. **Solution**: * Establish a consistent tone from the start * Review the entire article for tone consistency * Adjust sections that don't match the intended tone * Use a style guide if available ## Best Practices * **Edit systematically**: Review clarity, structure, flow, and readability in that order * **Take breaks**: Step away from content before final review * **Read aloud**: Reading aloud helps identify awkward phrasing * **Get feedback**: Have others review your content when possible * **Focus on users**: Prioritize user experience over keyword stuffing optimization * **Be consistent**: Maintain consistent style and tone throughout ## Next Steps * Learn about [publishing articles](/articles/publish-articles) to get your content live * Explore [on-page quality for citable pages](/technical-seo/on-page-seo) for advanced optimization * Review [site crawlability basics](/technical-seo/technical-seo-basics) for site quality context # Generate articles Source: https://docs.genseo.co/articles/generate-articles Optional AI drafts in Genseo for citable on-site pages. Core product remains prompt tracking and AI visibility. ## Overview Article generation is **optional**. Genseo's core product is [AI visibility](/product/ai-visibility). Use articles when you need long-form pages on your domain that models can cite in answers. Genseo can generate structured articles from your keywords. This guide explains generation settings and how briefs influence output. ## How Article Generation Works ### The Generation Process 1. **Keyword analysis**: Genseo analyzes your keyword to understand search intent and topic 2. **Content research**: The system researches the topic to gather relevant information 3. **Article structure**: Genseo creates an structured structure with headings and sections 4. **Content generation**: The AI writes the article content based on your settings 5. **on-page optimization**: The article is optimized for search engines with proper keyword placement ### What Gets Generated Each generated article includes: * **Title**: structured title with your target keyword * **Introduction**: Engaging introduction that hooks readers * **Headings**: Proper H1, H2, H3 structure for citable pages * **Content**: Comprehensive, well-structured content * **Conclusion**: Summary and call-to-action * **Meta description**: meta description (if configured) ## Article Briefs and Settings Before generating an article, you can adjust settings that influence the output. ### Tone of Voice Choose how the article should sound: * **Professional**: Formal, authoritative tone * **Friendly**: Conversational, approachable tone * **Technical**: Detailed, technical language * **Casual**: Relaxed, informal tone Match your tone to your brand voice and target audience. For B2B audiences, professional or technical tones often work well. For B2C, friendly or casual tones may be more appropriate. ### Article Length Control how long the article should be: * **Short**: 500-800 words (quick reads, simple topics) * **Medium**: 800-1,500 words (standard blog posts) * **Long**: 1,500-2,500 words (comprehensive guides) * **Very long**: 2,500+ words (in-depth resources) Longer articles often perform better for citable pages, but ensure the length matches the topic. Simple topics don't need 2,500 words, while complex topics benefit from comprehensive coverage. ### Target Audience Define who the article is for: * **General audience**: Broad, accessible language * **Beginners**: Simple explanations, no jargon * **Intermediate**: Assumes some knowledge * **Experts**: Advanced, technical content ### Content Focus Specify what the article should emphasize: * **Educational**: Focus on teaching and explaining * **How-to**: Step-by-step instructions * **Comparison**: Compare options or approaches * **Analysis**: Deep dive into a topic ## Custom Prompts For advanced control, you can provide custom prompts that guide the generation process. ### What Are Prompts? Prompts are instructions that tell Genseo exactly what you want in the article. They can include: * Specific points to cover * Structure requirements * Style guidelines * Examples to reference ### Example Prompts **Basic prompt**: ``` Write a comprehensive guide to AI search visibility. Include sections on prompt tracking, citations, and site health. Use a professional tone and include practical examples. ``` **Detailed prompt**: ``` Create an article about content marketing for SaaS companies. Structure it as follows: 1. Introduction to content marketing 2. Why content marketing matters for SaaS 3. Content marketing strategies 4. Measuring success 5. Best practices Use a friendly, conversational tone and include real-world examples from successful SaaS companies. ``` ### Best Practices for Prompts * **Be specific**: Clear, specific instructions produce better results * **Define structure**: Outline the structure you want * **Specify tone**: Include tone and style preferences * **Provide examples**: Reference examples when helpful * **Set expectations**: Clarify what the article should achieve ## Adjusting Before Confirming Before confirming article generation, you can: ### Review the Brief Check that your settings are correct: 1. Verify the keyword is correct 2. Review tone, length, and audience settings 3. Check custom prompts if provided 4. Ensure settings match your content strategy ### Make Adjustments If something needs to change: 1. Adjust tone, length, or audience settings 2. Modify custom prompts 3. Change the target keyword if needed 4. Update content focus ### Preview Structure Some plans allow you to preview the article structure before generation: 1. Review the proposed structure 2. Adjust sections if needed 3. Add or remove sections 4. Confirm when satisfied ## After Generation Once the article is generated: ### Review the Content 1. **Read through**: Check the article for accuracy and quality 2. **Verify on-page fields**: Ensure proper keyword placement and structure 3. **Check tone**: Confirm the tone matches your brand 4. **Assess completeness**: Ensure all important points are covered ### Make Edits Use the Genseo editor to: * Revise content for clarity * Adjust tone or style * Add or remove sections * Fix any errors ### Regenerate if Needed If the article doesn't meet your needs: 1. Click **Regenerate** 2. Adjust settings or prompts 3. Generate a new version 4. Compare with the previous version ## Best Practices ### Before Generation * **Choose the right keyword**: Ensure your keyword is specific and relevant * **Set appropriate length**: Match length to the topic complexity * **Match tone to audience**: Use a tone that resonates with your target audience * **Provide clear prompts**: Give specific instructions for better results ### During Generation * **Be patient**: Generation can take a few minutes for longer articles * **Don't interrupt**: Let the generation process complete * **Review settings**: Double-check settings before confirming ### After Generation * **Always review**: Never publish without reviewing generated content * **Edit as needed**: Make adjustments to match your brand and accuracy requirements * **Verify on-page fields**: Check that on-page fields are properly implemented * **Test readability**: Ensure the content is readable and engaging ## Common Issues ### Article Doesn't Match Expectations **Problem**: The generated article doesn't match what you wanted. **Solution**: * Adjust your settings (tone, length, audience) * Provide more detailed prompts * Try regenerating with different settings * Edit the article after generation ### Article Is Too Generic **Problem**: The article feels generic or lacks specific insights. **Solution**: * Add custom prompts with specific requirements * Specify that you want unique insights or examples * Edit the article to add your own expertise * Consider generating multiple versions and combining the best parts ### Structure missing **Problem**: The article lacks proper article structure. **Solution**: * Verify your keyword is correctly set * Check that on-page optimization is enabled in settings * Edit the article to add missing on-page fields * Contact support if generation features are not working ## Next Steps * Learn how to [edit articles](/articles/edit-articles) to refine generated content * Explore [publishing workflows](/articles/publish-articles) to get your content live * Review [on-page quality for citable pages](/technical-seo/on-page-seo) to improve citable pages # Publish articles Source: https://docs.genseo.co/articles/publish-articles Send optional Genseo articles to Webflow, Shopify, WordPress, Wix, Framer, or webhooks from one project. ## Overview This guide covers publishing to your connected integration (Webflow, Shopify, WordPress, Wix, Framer, or webhooks), republishing updates, previews, and common issues such as slug conflicts. ## Publishing Workflows ### Immediate Publishing Publish articles immediately to your connected integration. #### For Webflow 1. Open the article you want to publish 2. Click **Publish** 3. Select **Webflow** as the destination 4. Review the preview 5. Click **Confirm** The article will be published to your Webflow CMS immediately. #### For Shopify 1. Open the article you want to publish 2. Click **Publish** 3. Select **Shopify** as the destination 4. Review the preview 5. Click **Confirm** The article will be published to your Shopify blog immediately. ### Scheduled Publishing Schedule articles for future publication. 1. Open the article you want to schedule 2. Click **Schedule** 3. Select your publish date and time 4. Choose your destination (Webflow or Shopify) 5. Click **Schedule** The article will be published automatically at the scheduled time. Use scheduled publishing to maintain a consistent content calendar and publish during optimal times for your audience. ## Republishing Updates When you update an article in Genseo, you need to republish it to update the live version. ### Updating Published Articles 1. Make your edits in the Genseo editor 2. Click **Update** 3. Select **Update in \[Integration]** (Webflow or Shopify) 4. Review the changes 5. Click **Confirm** The article will be updated in your integration, overwriting the previous version. Genseo maintains a connection between articles and published content. Updates will automatically update the correct item in your integration. ### Handling Major Updates For major updates that change the article significantly: 1. **Review impact**: Consider if the update changes the article's core message 2. **Check on-page fields**: Ensure on-page fields (title, slug, keywords) are still appropriate 3. **Update metadata**: Update meta descriptions and other metadata if needed 4. **Test links**: Verify internal and external links still work 5. **Republish**: Republish the updated article ## Checking Live Previews Before publishing, review how your article will appear on your site. ### Preview in Genseo Genseo provides a preview of how your article will look: 1. Click **Preview** before publishing 2. Review the article structure and formatting 3. Check that images and links display correctly 4. Verify on-page fields are properly formatted ### Preview in Integration After publishing, check the live version: #### For Webflow 1. Go to your Webflow CMS 2. Find the published article 3. Click **Preview** to see how it appears on your site 4. Check the live URL to see the public version #### For Shopify 1. Go to your Shopify admin 2. Navigate to **Online Store** → **Blog posts** 3. Find the published article 4. Click **View** to see how it appears on your storefront ### Common Preview Issues **Images not displaying**: * Check that image URLs are correct * Verify images are accessible * Ensure images meet integration requirements **Formatting issues**: * Review HTML formatting in the integration * Check that your theme supports the formatting * Adjust formatting in the integration if needed **Links not working**: * Verify link URLs are correct * Check that links use proper protocols (http\:// or https\://) * Test links in the live version ## Avoiding Slug Conflicts URL slugs must be unique. Conflicts occur when multiple articles try to use the same slug. ### How Genseo Handles Slugs Genseo automatically generates slugs from article titles: 1. **Convert to lowercase**: Title is converted to lowercase 2. **Replace spaces**: Spaces are replaced with hyphens 3. **Remove special characters**: Special characters are removed or converted 4. **Handle conflicts**: If a slug exists, Genseo adds a number (e.g., `article-2`) ### Preventing Slug Conflicts * **Use unique titles**: Ensure article titles are unique * **Check existing slugs**: Review existing articles before creating new ones * **Customize slugs**: Manually set slugs when needed to avoid conflicts * **Use descriptive slugs**: Make slugs descriptive and keyword-rich ### Resolving Slug Conflicts If you encounter a slug conflict: 1. **Edit the slug**: Manually edit the slug in Genseo before publishing 2. **Update in integration**: If already published, update the slug in your integration 3. **Use redirects**: Set up redirects if you change a published article's slug ## Common Publishing Issues ### Publishing Fails **Problem**: Article fails to publish to your integration. **Solution**: * Verify your integration is properly connected * Check that you have publish permissions in your integration * Ensure required fields are mapped correctly * Try publishing again after a few minutes ### Article Not Visible **Problem**: Article is published but not visible on your site. **Solution**: * Check that the article is set to "Published" in your integration * Verify your integration's publishing settings * Ensure your site theme is configured to display the content * Check for any caching issues ### Formatting Lost **Problem**: Article formatting is lost when published. **Solution**: * Review HTML formatting in your integration * Check that your theme supports the formatting used * Adjust formatting in your integration's editor if needed * Verify that Genseo is sending properly formatted HTML ### Images Not Uploading **Problem**: Images aren't uploading to your integration. **Solution**: * Check that images meet file size and format requirements * Verify image URLs are accessible * Ensure you have sufficient storage in your integration * Try uploading images manually if needed ## Best Practices ### Before Publishing * **Review content**: Always review articles before publishing * **Check preview**: Use preview to see how articles will appear * **Verify on-page fields**: Ensure on-page fields are properly configured * **Test links**: Verify all links work correctly ### During Publishing * **Choose the right time**: Schedule publishing for optimal times * **Monitor publishing**: Watch for any errors during publishing * **Check immediately**: Verify articles appear correctly after publishing ### After Publishing * **Review live version**: Check how articles appear on your live site * **Test functionality**: Verify links, images, and formatting work * **Monitor performance**: Track how articles perform over time * **Update as needed**: Make updates based on performance and feedback ## Next Steps * Learn about [content calendar](/calendar/content-calendar) to organize your publishing schedule * Explore [auto-publish](/calendar/auto-publish) to automate your publishing workflow * Review [Webflow integration](/integrations/webflow) or [Shopify integration](/integrations/shopify) for integration-specific guidance # Affiliate program Source: https://docs.genseo.co/billing-support/affiliate-program Genseo affiliate commissions, referral links, attribution rules, and payout timing for partners. ## Overview Genseo's affiliate program allows you to earn commissions by referring new customers. This guide covers commission rates, payout timing, how to share referral links, and how attribution works. ## How the Affiliate Program Works ### Earning Commissions When you refer someone to Genseo: 1. **Share your link**: Share your unique referral link with potential customers 2. **Customer signs up**: The customer signs up using your referral link 3. **Attribution**: The sign-up is attributed to your referral 4. **Commission earned**: You earn a commission when the customer subscribes ### Commission Structure Commissions are typically calculated as a percentage of the customer's subscription revenue. **Example**: * Commission rate: 20% * Customer's monthly plan: \$100/month * Your commission: \$20/month (for as long as the customer remains subscribed) Commission rates and structures may vary. Check your affiliate dashboard for specific commission rates and terms. ## Commission Percentage Commission rates vary based on the affiliate program tier and customer plan. ### Standard Commission Rates * **Starter plans**: Typically 10-15% commission * **Professional plans**: Typically 15-20% commission * **Enterprise plans**: Typically 20-25% commission or custom rates Specific commission rates may vary. Check your affiliate dashboard for your specific commission rates. ### Commission Tiers Some affiliate programs offer tiered commission rates: * **Bronze tier**: Base commission rate * **Silver tier**: Higher commission rate (after reaching certain referral thresholds) * **Gold tier**: Highest commission rate (after reaching higher referral thresholds) ## Payout Timing Commissions are paid out according to the affiliate program's payout schedule. ### Payout Schedule * **Monthly payouts**: Commissions are paid monthly, typically 30-60 days after the customer's payment * **Minimum payout**: There's usually a minimum payout threshold (e.g., $50 or $100) * **Payment method**: Payouts are made via PayPal, bank transfer, or other methods ### Payout Process 1. **Accumulate commissions**: Commissions accumulate as customers subscribe and pay 2. **Reach minimum**: When you reach the minimum payout threshold, you're eligible for payout 3. **Payout processing**: Payouts are processed according to the payout schedule 4. **Payment received**: You receive payment via your selected payment method Monitor your affiliate dashboard to track your commission earnings and payout status. ## Referral Links Your referral link is a unique URL that tracks sign-ups attributed to you. ### Getting Your Referral Link 1. Go to **Settings** → **Affiliate** or **Referrals** 2. Find your unique referral link 3. Copy your referral link 4. Share it with potential customers ### Using Your Referral Link Share your referral link: * **Email**: Include your referral link in emails to potential customers * **Social media**: Share your referral link on social media * **Website**: Add your referral link to your website or blog * **Direct sharing**: Share your referral link directly with potential customers ### Referral Link Format Your referral link typically looks like: ``` https://app.genseo.co/sign-up?ref=YOUR_REFERRAL_CODE&utm_source=docs&utm_medium=documentation&utm_campaign=affiliate-program ``` Use your referral link consistently to ensure proper attribution of sign-ups. ## Attribution Rules Attribution determines which affiliate gets credit for a referral. ### How Attribution Works Attribution is typically based on: * **First click**: The first referral link the customer clicks * **Last click**: The last referral link the customer clicks before signing up * **Cookie duration**: How long the attribution cookie lasts (typically 30-90 days) ### Attribution Window The attribution window determines how long a referral link remains valid: * **Standard window**: Typically 30-90 days * **Cookie-based**: Attribution is stored in a cookie * **Expiration**: Attribution expires after the attribution window ### Multiple Referrals If a customer clicks multiple referral links: * **First click wins**: The first referral link typically gets attribution * **Last click wins**: Some programs use last-click attribution * **Check program rules**: Review the affiliate program rules for specific attribution rules ## Tracking Your Referrals ### Affiliate Dashboard Monitor your referrals and commissions: 1. Go to **Settings** → **Affiliate** or **Referrals** 2. View your affiliate dashboard 3. Track: * Number of referrals * Commission earnings * Payout status * Referral links performance ### Key Metrics Track these metrics: * **Total referrals**: Number of customers who signed up using your link * **Active referrals**: Number of customers currently subscribed * **Total commissions**: Total commissions earned * **Pending payouts**: Commissions pending payout * **Paid out**: Commissions already paid out ## Best Practices ### Sharing Your Link * **Be authentic**: Only share your link with people who would genuinely benefit from Genseo * **Provide value**: Explain why Genseo is valuable, not just share the link * **Use multiple channels**: Share your link across multiple channels (email, social media, website) * **Track performance**: Monitor which channels and methods work best ### Building Referrals * **Create content**: Create content about Genseo and include your referral link * **Share experiences**: Share your experiences using Genseo * **Provide tutorials**: Create tutorials or guides that include your referral link * **Engage communities**: Engage in relevant communities and share your link when appropriate ### Managing Your Program * **Monitor dashboard**: Regularly check your affiliate dashboard * **Track performance**: Monitor which referral methods work best * **Optimize strategy**: Adjust your referral strategy based on performance * **Stay compliant**: Ensure you comply with affiliate program rules and terms ## Common Questions ### How long does attribution last? Attribution typically lasts 30-90 days, depending on the affiliate program. Check your affiliate dashboard for specific attribution window details. ### Can I refer myself? Self-referrals are typically not allowed and may result in account suspension. Only refer genuine customers. ### What happens if a customer cancels? If a customer cancels, you typically stop earning commissions for that customer. Commission policies may vary, so check your affiliate program terms. ### How do I get paid? Payouts are typically made monthly via PayPal, bank transfer, or other methods. You must reach the minimum payout threshold to receive payment. ## Next Steps * Learn about [managing billing](/billing-support/manage-billing-invoices) to understand your account * Explore [contacting support](/billing-support/contact-support) for affiliate program questions * Review [plans and limits](/billing-support/plans-limits-upgrades) to understand Genseo's offerings # Cancel subscription Source: https://docs.genseo.co/billing-support/cancel-subscription Cancel Genseo at period end, what stays active until then, and how to reactivate your account. ## Overview This guide covers how to cancel your Genseo subscription, when the cancellation takes effect, and how to reactivate your account if you change your mind. ## Canceling Your Subscription ### Step 1: Access Billing Settings 1. Log in to your Genseo account 2. Go to **Settings** → **Billing** 3. Navigate to the **Subscription** section ### Step 2: Initiate Cancellation 1. Click **Cancel Subscription** or **Manage Subscription** 2. Review the cancellation information 3. Confirm that you want to cancel ### Step 3: Confirm Cancellation 1. You may be asked to provide a reason for canceling (optional) 2. Review the cancellation terms 3. Confirm the cancellation Cancellation takes effect at the end of your current billing period. You'll continue to have access until then. ## Effective-at-Period-End Policy Genseo uses an effective-at-period-end cancellation policy. ### How It Works When you cancel your subscription: * **Immediate effect**: Cancellation is processed immediately * **Access continues**: You continue to have access until the end of your current billing period * **No immediate refund**: You're not refunded for the remainder of your billing period * **Automatic cancellation**: Your subscription automatically cancels at the end of your billing period ### Example Scenario **Current situation**: * Billing cycle: Monthly (resets on the 15th) * Today's date: January 5th * Next billing date: January 15th **After cancellation**: * Cancellation processed: January 5th * Access continues until: January 15th * Subscription ends: January 15th * No access after: January 15th ### What Happens at the End of Your Billing Period When your billing period ends: 1. **Subscription ends**: Your subscription is canceled 2. **Access revoked**: You lose access to paid features 3. **Data retained**: Your data is retained for a period (check data retention policy) 4. **No further charges**: You're not charged for future billing periods ## What Happens After Cancellation ### Immediate Effects * **Cancellation confirmed**: You receive a confirmation of cancellation * **Access continues**: You continue to have access until the end of your billing period * **No new charges**: You won't be charged for future billing periods ### At the End of Your Billing Period * **Access ends**: You lose access to paid features * **Data access**: You may lose access to your data (check data retention policy) * **Export data**: Consider exporting your data before cancellation takes effect ### Data Retention Genseo retains your data for a period after cancellation: * **Retention period**: Check Genseo's data retention policy for specific details * **Data export**: Export your data before cancellation takes effect if needed * **Data deletion**: Data may be deleted after the retention period ## Reactivating Your Subscription If you change your mind, you can reactivate your subscription. ### Before Cancellation Takes Effect If you cancel but want to reactivate before the end of your billing period: 1. Go to **Settings** → **Billing** 2. Click **Reactivate Subscription** or **Restore Subscription** 3. Confirm reactivation 4. Your subscription is immediately reactivated ### After Cancellation Takes Effect If your subscription has already been canceled: 1. Log in to your Genseo account 2. Go to **Settings** → **Billing** 3. Click **Reactivate Subscription** or **Restore Subscription** 4. Select your plan and payment method 5. Confirm reactivation 6. Your subscription is reactivated, and you're charged immediately Reactivating after cancellation may require setting up a new payment method if your previous one was removed. ## Before You Cancel Consider these factors before canceling: ### Export Your Data * **Export articles**: Export your articles and content * **Export keywords**: Export your keyword lists * **Export settings**: Export your settings and configurations * **Save invoices**: Download and save your invoices ### Understand Impact * **Loss of access**: You'll lose access to paid features * **Data retention**: Understand how long your data will be retained * **Reactivation**: Know that you can reactivate if you change your mind ### Alternatives to Cancellation Consider alternatives before canceling: * **Downgrade plan**: Downgrade to a lower-tier plan instead of canceling * **Pause subscription**: Check if pausing is an option * **Adjust usage**: Adjust your usage to fit your current plan * **Contact support**: Contact support to discuss your needs ## Best Practices ### Before Canceling * **Export data**: Export your data before canceling * **Review usage**: Review your usage to understand what you'll lose * **Consider alternatives**: Consider downgrading or pausing instead * **Contact support**: Contact support if you have questions or concerns ### After Canceling * **Monitor access**: Monitor when your access will end * **Export data**: Export any remaining data before access ends * **Save information**: Save important information and invoices * **Stay informed**: Stay informed about Genseo updates in case you want to return ## Common Questions ### Can I get a refund if I cancel? Refund policies vary. Typically, cancellations are effective at the end of your billing period, and you're not refunded for the remainder of your current billing period. Contact support for specific refund policies. ### What happens to my articles after I cancel? Your articles may be retained for a period after cancellation, but you'll lose access to them. Export your articles before cancellation takes effect if you want to keep them. ### Can I cancel immediately? Cancellation is processed immediately, but access continues until the end of your current billing period. You're not refunded for the remainder of your billing period. ### How do I reactivate after canceling? Go to **Settings** → **Billing** → **Reactivate Subscription** to reactivate your subscription. You may need to set up a new payment method. ## Next Steps * Learn about [managing billing](/billing-support/manage-billing-invoices) to update payment methods * Explore [contacting support](/billing-support/contact-support) if you have questions about canceling * Review [plans and limits](/billing-support/plans-limits-upgrades) to understand your subscription # Contact support Source: https://docs.genseo.co/billing-support/contact-support Reach Genseo support by chat or email, availability, and what to include for faster help. ## Overview Genseo offers multiple support channels to help you with questions, issues, and feedback. This guide covers how to access chat support, email support, and what to expect regarding response times. ## Chat Support Chat support provides real-time assistance for quick questions and issues. ### Accessing Chat Support 1. **In-app chat**: Look for the chat icon in the Genseo app (usually in the bottom right corner) 2. **Click to open**: Click the chat icon to open the chat window 3. **Start conversation**: Type your question or issue and send your message 4. **Wait for response**: Wait for a support agent to respond Chat support is typically available during business hours. Check Genseo's support hours for specific availability. ### When to Use Chat Support Chat support is best for: * **Quick questions**: Simple questions that need quick answers * **Technical issues**: Immediate technical problems that need resolution * **Account issues**: Account-related questions or problems * **Billing questions**: Quick billing or subscription questions ### Chat Support Best Practices * **Be specific**: Provide specific details about your question or issue * **Include context**: Include relevant context (error messages, steps to reproduce, etc.) * **Be patient**: Wait for a response—support agents may be helping multiple customers * **Follow up**: Follow up if you don't receive a response within expected timeframes ## Email Support Email support is available for more detailed questions and issues. ### Sending an Email 1. **Find email address**: Find Genseo's support email address (typically [support@genseo.co](mailto:support@genseo.co) or similar) 2. **Compose email**: Write a detailed email with your question or issue 3. **Include details**: Include relevant details (account information, error messages, steps to reproduce, etc.) 4. **Send email**: Send your email and wait for a response ### When to Use Email Support Email support is best for: * **Detailed questions**: Complex questions that require detailed explanations * **Feature requests**: Suggestions for new features or improvements * **Account issues**: Account-related issues that need detailed investigation * **Billing disputes**: Billing or payment issues that need review ### Email Support Best Practices * **Use clear subject lines**: Use descriptive subject lines that summarize your question or issue * **Provide context**: Include relevant context and details in your email * **Include screenshots**: Attach screenshots or screen recordings if they help explain your issue * **Be patient**: Allow time for support to investigate and respond ## Response Times Response times vary based on support channel and issue complexity. ### Chat Support Response Times * **Typical response**: Usually within a few minutes to an hour during business hours * **Business hours**: Faster responses during business hours * **After hours**: Slower responses outside business hours * **Complex issues**: May take longer for complex issues that require investigation ### Email Support Response Times * **Typical response**: Usually within 24-48 hours * **Business days**: Faster responses on business days * **Weekends/holidays**: Slower responses on weekends and holidays * **Complex issues**: May take longer for complex issues that require investigation Response times may vary based on support volume and issue complexity. Check Genseo's support page for current response time estimates. ## Getting Help Faster ### Provide Detailed Information Help support help you faster by providing: * **Account information**: Your account email or username * **Error messages**: Exact error messages you're seeing * **Steps to reproduce**: Step-by-step instructions to reproduce the issue * **Screenshots**: Screenshots or screen recordings of the issue * **Browser/device info**: Browser and device information if relevant ### Check Documentation First Before contacting support: 1. **Search documentation**: Search the documentation for answers to your question 2. **Check FAQs**: Review frequently asked questions 3. **Search knowledge base**: Search the knowledge base for similar issues 4. **Review guides**: Review relevant guides and tutorials ### Use the Right Channel Choose the right support channel: * **Chat for quick questions**: Use chat for quick questions that need immediate answers * **Email for complex issues**: Use email for complex issues that need detailed investigation * **Documentation for common questions**: Check documentation for common questions before contacting support ## Support Hours Support availability varies by channel and plan. ### Standard Support Hours * **Chat support**: Typically available during business hours (e.g., 9 AM - 5 PM, Monday-Friday) * **Email support**: Available 24/7, with responses during business hours * **Response times**: Faster responses during business hours ### Priority Support Some plans include priority support: * **Faster responses**: Priority support typically receives faster responses * **Extended hours**: Priority support may have extended support hours * **Dedicated support**: Some plans include dedicated support channels Support hours and availability may vary. Check Genseo's support page for current support hours and availability. ## Common Support Topics ### Account Issues * **Login problems**: Issues logging into your account * **Account settings**: Questions about account settings * **Password reset**: Help resetting your password * **Account access**: Issues accessing your account ### Billing Questions * **Payment issues**: Problems with payments or billing * **Subscription questions**: Questions about subscriptions and plans * **Invoice requests**: Requests for invoices or billing information * **Refund requests**: Requests for refunds ### Technical Issues * **Integration problems**: Issues with Webflow, Shopify, or other integrations * **Article generation**: Problems generating articles * **Publishing issues**: Issues publishing articles * **Performance problems**: Slow performance or errors ### Feature Questions * **How-to questions**: Questions about how to use features * **Feature requests**: Suggestions for new features * **Feature availability**: Questions about feature availability * **Best practices**: Questions about best practices ## Best Practices ### Before Contacting Support * **Check documentation**: Search documentation for answers first * **Gather information**: Collect relevant information (error messages, steps to reproduce, etc.) * **Try troubleshooting**: Try basic troubleshooting steps before contacting support * **Be specific**: Prepare specific details about your question or issue ### When Contacting Support * **Be clear and concise**: Clearly describe your question or issue * **Provide context**: Include relevant context and details * **Include screenshots**: Attach screenshots or screen recordings if helpful * **Be patient**: Allow time for support to investigate and respond ### After Contacting Support * **Follow up if needed**: Follow up if you don't receive a response within expected timeframes * **Provide feedback**: Provide feedback on the support experience * **Document solutions**: Document solutions for future reference ## Common Questions ### How do I access chat support? Look for the chat icon in the Genseo app (usually in the bottom right corner) and click it to open the chat window. ### What's the best way to get help quickly? Use chat support for quick questions, provide detailed information, and check documentation first before contacting support. ### How long does it take to get a response? Response times vary: chat support typically responds within minutes to an hour during business hours, while email support typically responds within 24-48 hours. ### Can I get priority support? Priority support is available on some plans. Check your plan details or contact support to learn more about priority support options. ## Next Steps * Learn about [managing billing](/billing-support/manage-billing-invoices) for billing-related questions * Explore [plans and limits](/billing-support/plans-limits-upgrades) to understand your subscription * Review [getting started](/getting-started/how-it-works) for help getting started with Genseo # Billing and invoices Source: https://docs.genseo.co/billing-support/manage-billing-invoices Update Genseo payment methods, add VAT or business details, and download invoices from the app. ## Overview This guide covers managing your billing information, including updating payment methods, adding VAT or business information, and downloading invoices. ## Updating Payment Methods Keep your payment method up to date to avoid service interruptions. ### Adding a Payment Method 1. Go to **Settings** → **Billing** 2. Click **Add Payment Method** 3. Enter your payment information: * Card number * Expiration date * CVV * Billing address 4. Click **Save** Use a credit or debit card that won't expire soon to avoid payment issues. ### Updating an Existing Payment Method 1. Go to **Settings** → **Billing** 2. Find your current payment method 3. Click **Edit** or **Update** 4. Enter your updated payment information 5. Click **Save** ### Setting a Default Payment Method If you have multiple payment methods: 1. Go to **Settings** → **Billing** 2. Find the payment method you want to set as default 3. Click **Set as Default** 4. Confirm the change ### Removing a Payment Method 1. Go to **Settings** → **Billing** 2. Find the payment method you want to remove 3. Click **Remove** 4. Confirm removal You can't remove your default payment method if it's the only one on file. Add a new payment method first, then remove the old one. ## Adding VAT or Business Information Add VAT numbers or business information for invoicing and tax purposes. ### Adding VAT Information 1. Go to **Settings** → **Billing** 2. Click **Tax Information** or **VAT Information** 3. Enter your VAT number 4. Select your country 5. Click **Save** VAT information is used for invoicing and tax compliance. Ensure your VAT number is correct to avoid billing issues. ### Adding Business Information 1. Go to **Settings** → **Billing** 2. Click **Business Information** 3. Enter your business details: * Business name * Business address * Tax ID or EIN * Business type 4. Click **Save** ### Updating Business Information 1. Go to **Settings** → **Billing** 2. Find your business information 3. Click **Edit** 4. Update your business details 5. Click **Save** ## Downloading Invoices Download invoices for your records or accounting purposes. ### Viewing Invoices 1. Go to **Settings** → **Billing** 2. Click **Invoices** or **Billing History** 3. View your invoice list 4. Click on an invoice to view details ### Downloading Invoices 1. Go to **Settings** → **Billing** 2. Click **Invoices** or **Billing History** 3. Find the invoice you want to download 4. Click **Download** or **Download PDF** 5. Save the invoice to your device ### Invoice Information Invoices typically include: * **Invoice number**: Unique identifier for the invoice * **Date**: Invoice date and due date * **Amount**: Total amount charged * **Plan details**: Details about your plan and usage * **Payment method**: Payment method used * **Business information**: Your business or billing information * **VAT information**: VAT details if applicable ### Receiving Invoice Emails You can opt to receive invoices via email: 1. Go to **Settings** → **Billing** 2. Click **Email Preferences** or **Notifications** 3. Enable **Invoice Emails** 4. Click **Save** Invoices will be sent to your registered email address when they're generated. ## Billing History Review your billing history to track payments and invoices. ### Viewing Billing History 1. Go to **Settings** → **Billing** 2. Click **Billing History** or **Invoices** 3. View your payment and invoice history 4. Filter or search for specific invoices or payments ### Understanding Billing History Your billing history shows: * **Payment dates**: When payments were made * **Amounts**: Amounts charged for each payment * **Invoice numbers**: Invoice numbers for each payment * **Plan changes**: Upgrades, downgrades, or plan changes * **Payment status**: Status of each payment (successful, failed, pending) ## Payment Issues ### Failed Payments If a payment fails: 1. **Check payment method**: Verify your payment method is valid and has sufficient funds 2. **Update payment method**: Update your payment method if it's expired or invalid 3. **Contact support**: Contact support if the issue persists 4. **Retry payment**: Retry the payment after updating your payment method ### Payment Disputes If you need to dispute a charge: 1. **Review invoice**: Review the invoice to understand the charge 2. **Contact support**: Contact support to discuss the charge 3. **Provide details**: Provide details about why you're disputing the charge 4. **Wait for resolution**: Wait for support to resolve the dispute ### Refunds Refund policies vary by plan and circumstances: 1. **Review policy**: Review Genseo's refund policy 2. **Contact support**: Contact support to request a refund 3. **Provide details**: Provide details about why you're requesting a refund 4. **Wait for processing**: Wait for the refund to be processed ## Best Practices ### Payment Management * **Keep payment method updated**: Ensure your payment method is always current * **Monitor billing**: Regularly review your billing history * **Save invoices**: Download and save invoices for your records * **Set up email notifications**: Receive invoices via email for easy access ### Business Information * **Keep information current**: Update business information when it changes * **Verify VAT numbers**: Ensure VAT numbers are correct for tax compliance * **Include all required information**: Provide all required business information for invoicing ### Invoice Management * **Download regularly**: Download invoices regularly for your records * **Organize invoices**: Keep invoices organized for accounting purposes * **Review for accuracy**: Review invoices for accuracy and contact support if there are issues ## Common Questions ### How do I update my billing address? Go to **Settings** → **Billing** → **Payment Methods**, then edit your payment method to update the billing address. ### Can I get invoices in a specific format? Invoices are typically provided as PDFs. Contact support if you need invoices in a different format. ### How do I add multiple payment methods? Go to **Settings** → **Billing** → **Payment Methods**, then click **Add Payment Method** to add additional payment methods. ### What if I need to change my business information? Go to **Settings** → **Billing** → **Business Information**, then edit your business information and save the changes. ## Next Steps * Learn about [plans and limits](/billing-support/plans-limits-upgrades) to understand your billing cycle * Explore [canceling subscriptions](/billing-support/cancel-subscription) if you need to cancel * Review [contacting support](/billing-support/contact-support) for assistance with billing questions # Plans and limits Source: https://docs.genseo.co/billing-support/plans-limits-upgrades Genseo plan tiers, usage limits for visibility and articles, upgrades, and how billing cycles reset. ## Overview Genseo offers different plans with varying article limits and features. This guide explains monthly article limits, how upgrades affect your limits, and how billing cycles work. ## Monthly Article Limits Each plan includes a monthly article limit that determines how many articles you can generate per month. ### How Limits Work * **Monthly reset**: Article limits reset at the beginning of each billing cycle * **Per account**: Limits apply to your entire account, not per user * **Unused articles**: Unused articles don't roll over to the next month * **Overage**: Exceeding your limit may require upgrading or waiting until the next billing cycle ### Understanding Your Limit Check your current limit and usage: 1. Go to **Settings** → **Billing** 2. View your current plan and article limit 3. Check how many articles you've used this month 4. See how many articles remain in your current billing cycle Monitor your article usage throughout the month to avoid hitting your limit unexpectedly. ## Upgrades and Limits Upgrading your plan increases your monthly article limit and unlocks additional features. ### How Upgrades Work When you upgrade your plan: 1. **Immediate effect**: Your new limit takes effect immediately 2. **Prorated billing**: You may be charged a prorated amount for the remainder of your billing cycle 3. **New limit**: Your monthly article limit increases to the new plan's limit 4. **Additional features**: You gain access to additional features included in the new plan ### Upgrading Mid-Cycle If you upgrade mid-cycle: * **Immediate access**: You immediately gain access to the new plan's limit * **Prorated charge**: You're charged a prorated amount for the upgrade * **Reset date**: Your billing cycle reset date remains the same * **Usage tracking**: Your article usage continues from your current usage ### Example Upgrade Scenario **Current situation**: * Plan: Starter (20 articles/month) * Articles used: 18 articles * Days remaining: 10 days **After upgrade**: * New plan: Professional (100 articles/month) * Articles available: 100 articles (immediate) * Prorated charge: Applied for the upgrade * Reset date: Remains the same (10 days) ## Billing Cycles Billing cycles determine when your article limits reset and when you're charged. ### Monthly Billing * **Billing period**: 30 days from your signup or upgrade date * **Reset date**: Article limits reset on your billing date * **Charge date**: You're charged on your billing date * **Usage tracking**: Article usage is tracked per billing cycle ### Annual Billing * **Billing period**: 365 days from your signup or upgrade date * **Reset date**: Article limits reset monthly (not annually) * **Charge date**: You're charged annually on your billing date * **Usage tracking**: Article usage is tracked per month, with limits resetting monthly Annual billing often includes discounts compared to monthly billing. Check pricing for current offers. ## Managing Your Limits ### Monitoring Usage Track your article usage: 1. **Dashboard**: Check your dashboard for current usage 2. **Billing settings**: View detailed usage in billing settings 3. **Notifications**: Receive notifications when approaching your limit 4. **Usage history**: Review past usage to plan future needs ### Avoiding Limit Issues Plan your content to avoid hitting limits: * **Monitor usage**: Regularly check your article usage * **Plan ahead**: Schedule content to avoid exceeding limits * **Upgrade when needed**: Upgrade before hitting your limit * **Optimize usage**: Use articles efficiently to maximize value ### When You Hit Your Limit If you exceed your monthly limit: 1. **Upgrade option**: Upgrade to a higher plan for more articles 2. **Wait for reset**: Wait until your billing cycle resets 3. **Contact support**: Contact support for custom solutions 4. **Review usage**: Review your usage to optimize future content planning ## Downgrades and Limits Downgrading your plan reduces your monthly article limit. ### How Downgrades Work When you downgrade your plan: 1. **Effective date**: Downgrade takes effect at the end of your current billing cycle 2. **New limit**: Your monthly article limit decreases to the new plan's limit 3. **Current usage**: Your current usage remains until the billing cycle resets 4. **Feature access**: You lose access to features not included in the new plan ### Downgrading Mid-Cycle If you downgrade mid-cycle: * **Current cycle**: You keep your current plan's limit until the end of the billing cycle * **Next cycle**: The new plan's limit applies at the start of the next billing cycle * **No refund**: You're not refunded for the remainder of the current cycle * **Feature access**: You keep feature access until the end of the current cycle ## Best Practices ### Planning Your Usage * **Monitor regularly**: Check your usage throughout the month * **Plan content**: Schedule content to maximize your article limit * **Upgrade proactively**: Upgrade before hitting your limit to avoid interruptions * **Optimize articles**: Use articles efficiently to get the most value ### Managing Billing * **Understand cycles**: Know when your billing cycle resets * **Track usage**: Monitor your article usage regularly * **Plan upgrades**: Plan upgrades based on your content needs * **Review plans**: Regularly review your plan to ensure it meets your needs ## Common Questions ### Do unused articles roll over? No, unused articles don't roll over to the next month. Your article limit resets at the beginning of each billing cycle. ### What happens if I exceed my limit? If you exceed your limit, you'll need to upgrade to a higher plan or wait until your billing cycle resets. Contact support for custom solutions. ### Can I upgrade mid-cycle? Yes, you can upgrade mid-cycle. Your new limit takes effect immediately, and you're charged a prorated amount for the upgrade. ### When does my limit reset? Your article limit resets on your billing date, which is the same date you signed up or upgraded to your current plan. ## Next Steps * Learn about [managing billing](/billing-support/manage-billing-invoices) to update payment methods and download invoices * Explore [canceling subscriptions](/billing-support/cancel-subscription) if you need to cancel * Review [contacting support](/billing-support/contact-support) for assistance with billing questions # Auto publish Source: https://docs.genseo.co/calendar/auto-publish Schedule automatic publishing for optional Genseo content, pause runs, or change publish dates. ## Overview Auto-publish allows you to schedule articles for automatic publication, so you can set up your content calendar and let Genseo handle the publishing. This guide covers setting up auto-publish, managing schedules, and pausing or rescheduling content. ## How Auto-Publish Works Auto-publish automatically publishes articles at scheduled times without manual intervention. Once you set up a schedule, Genseo will: 1. Generate articles based on your keywords 2. Schedule them for publication 3. Automatically publish them at the scheduled time 4. Notify you when articles are published ## Setting Up Auto-Publish ### Step 1: Enable Auto-Publish 1. Go to **Settings** → **Auto-Publish** 2. Toggle **Enable Auto-Publish** to on 3. Configure your default settings: * Publishing frequency (daily, weekly, etc.) * Default publishing time * Default integration (Webflow or Shopify) ### Step 2: Configure Schedule Set up your publishing schedule: 1. **Choose frequency**: How often to publish (daily, weekly, multiple times per week) 2. **Set times**: What time of day to publish 3. **Select days**: Which days of the week to publish 4. **Choose integration**: Which integration to publish to Start with a conservative schedule (e.g., 2-3 articles per week) and increase as you build your content pipeline. ### Step 3: Add Keywords Add keywords that will be automatically turned into articles: 1. Go to **Keywords** 2. Add keywords you want to publish 3. Keywords will be automatically used for article generation 4. Articles will be scheduled based on your auto-publish settings ## Managing Schedules ### Changing Schedules Update your publishing schedule: 1. Go to **Settings** → **Auto-Publish** 2. Modify your schedule settings: * Change frequency * Adjust publishing times * Update which days to publish 3. Click **Save** Changes will apply to newly scheduled articles. Existing scheduled articles will keep their current schedules. ### Individual Article Schedules Override auto-publish schedule for specific articles: 1. Open the article you want to schedule differently 2. Click **Schedule** 3. Set a custom date and time 4. Click **Schedule** The article will be published at your custom time instead of the auto-publish schedule. ### Bulk Scheduling Schedule multiple articles at once: 1. Go to **Calendar** 2. Select multiple articles 3. Click **Schedule** 4. Set a schedule for all selected articles 5. Click **Confirm** All selected articles will be scheduled accordingly. ## Pausing Auto-Publish Temporarily stop automatic publishing without deleting scheduled articles. ### Pause Auto-Publish 1. Go to **Settings** → **Auto-Publish** 2. Toggle **Enable Auto-Publish** to off 3. Click **Save** Auto-publish will be paused, but scheduled articles will remain scheduled. You can manually publish them or resume auto-publish later. ### What Happens When Paused When auto-publish is paused: * **Scheduled articles remain**: Articles already scheduled will keep their schedules * **New articles won't auto-schedule**: New articles won't be automatically scheduled * **Manual publishing still works**: You can still manually publish articles * **Can resume anytime**: You can re-enable auto-publish at any time ## Rescheduling Content Change when scheduled articles will be published. ### Reschedule Individual Articles 1. Open the article you want to reschedule 2. Click **Edit Schedule** 3. Change the publication date and time 4. Click **Save** The article will be rescheduled to the new time. ### Reschedule Multiple Articles 1. Go to **Calendar** 2. Select multiple articles 3. Click **Reschedule** 4. Set a new schedule for all selected articles 5. Click **Confirm** All selected articles will be rescheduled. ### Cancel Schedules Remove schedules from articles: 1. Open the article you want to unschedule 2. Click **Cancel Schedule** 3. Confirm cancellation The article will no longer be scheduled. You can schedule it again later or publish it manually. ## Best Practices ### Planning * **Plan ahead**: Set up auto-publish schedules weeks or months in advance * **Balance frequency**: Don't over-publish—maintain a consistent, sustainable schedule * **Consider your audience**: Publish when your audience is most active * **Monitor performance**: Track which publishing times perform best ### Management * **Review scheduled content**: Regularly review what's scheduled to ensure quality * **Adjust as needed**: Modify schedules based on performance and feedback * **Maintain flexibility**: Be ready to pause or adjust schedules when needed * **Monitor automation**: Keep an eye on auto-publish to ensure it's working correctly ### Quality Control * **Review before publishing**: Consider reviewing articles before they're auto-published * **Set quality standards**: Establish standards for auto-published content * **Monitor results**: Track how auto-published articles perform * **Adjust strategy**: Modify your strategy based on performance ## Common Issues ### Articles Not Publishing **Problem**: Scheduled articles aren't publishing automatically. **Solution**: * Verify auto-publish is enabled * Check that articles are properly scheduled * Ensure your integration is connected and working * Review error logs for any issues * Contact support if the problem persists ### Wrong Publishing Times **Problem**: Articles are publishing at the wrong times. **Solution**: * Check your timezone settings * Verify your schedule settings * Ensure your integration's timezone matches * Review individual article schedules ### Too Many Articles Scheduled **Problem**: Too many articles are scheduled, overwhelming your content calendar. **Solution**: * Reduce publishing frequency * Pause auto-publish temporarily * Cancel some scheduled articles * Adjust your keyword list ### Integration Issues **Problem**: Auto-publish fails due to integration issues. **Solution**: * Verify your integration is properly connected * Check integration permissions * Test manual publishing to verify integration works * Contact support if integration issues persist ## Next Steps * Learn about [content calendar](/calendar/content-calendar) to organize your publishing schedule * Explore [publishing articles](/articles/publish-articles) for manual publishing workflows * Review [integrations](/integrations/webflow) for integration-specific guidance # Content calendar Source: https://docs.genseo.co/calendar/content-calendar Schedule optional Genseo articles, track draft and published status, and see what is coming next. ## Overview The content calendar helps you plan, organize, and track your content publishing schedule. This guide covers the calendar interface, status indicators, and how to manage your content pipeline. ## Calendar Interface ### Viewing the Calendar The content calendar displays your content in a calendar view: * **Month view**: See all content scheduled for the month * **Week view**: Focus on a specific week * **Day view**: See detailed schedule for a single day * **List view**: See all content in a list format ### Navigating the Calendar * **Previous/Next**: Navigate between months, weeks, or days * **Today**: Jump to today's date * **Filter**: Filter content by status, integration, or keyword * **Search**: Search for specific articles or keywords ## Status Indicators The calendar uses status indicators to show the state of each article. ### Status Types #### Draft Articles that haven't been generated yet or are in progress. **Indicator**: Gray or outlined icon **Actions available**: * Generate article * Edit keyword * Delete keyword #### Generated Articles that have been generated but not yet published. **Indicator**: Yellow or orange icon **Actions available**: * Edit article * Publish immediately * Schedule publishing * Delete article #### Scheduled Articles that are scheduled for future publication. **Indicator**: Blue icon **Actions available**: * Edit article * Edit schedule * Publish immediately * Cancel schedule #### Published Articles that have been published. **Indicator**: Green icon **Actions available**: * View article * Edit and republish * View analytics (if available) #### Failed Articles that failed to generate or publish. **Indicator**: Red icon **Actions available**: * Retry generation * Retry publishing * Delete article ## Tracking Content ### Upcoming Content Track content that's planned or scheduled: 1. **View scheduled articles**: See all articles scheduled for future dates 2. **Check deadlines**: Monitor upcoming publication dates 3. **Review status**: Ensure articles are on track to be published 4. **Adjust schedule**: Reschedule articles as needed ### Completed Content Track content that's been published: 1. **View published articles**: See all published articles 2. **Review performance**: Check how articles are performing (if analytics are available) 3. **Monitor updates**: Track which articles have been updated 4. **Analyze results**: Review which content performs best ### Content Pipeline Manage your content pipeline: 1. **Plan ahead**: Schedule content weeks or months in advance 2. **Balance workload**: Distribute content creation evenly 3. **Track progress**: Monitor how many articles are in each status 4. **Identify gaps**: Find periods with no scheduled content ## Managing Content in the Calendar ### Adding Content Add new content to your calendar: 1. **Add keyword**: Add a keyword that will become an article 2. **Generate article**: Generate an article from a keyword 3. **Schedule publishing**: Schedule when the article will be published ### Editing Content Edit content from the calendar: 1. **Click on article**: Click on an article in the calendar 2. **Edit article**: Make changes to the article content 3. **Edit schedule**: Change when the article will be published 4. **Update status**: Change the article status if needed ### Rescheduling Content Change when content will be published: 1. **Select article**: Click on the article you want to reschedule 2. **Edit schedule**: Change the publication date and time 3. **Save changes**: Confirm the new schedule ### Deleting Content Remove content from your calendar: 1. **Select article**: Click on the article you want to delete 2. **Delete**: Confirm deletion 3. **Verify removal**: Ensure the article is removed from the calendar ## Best Practices ### Planning * **Plan ahead**: Schedule content weeks or months in advance * **Maintain consistency**: Publish content regularly * **Balance topics**: Mix different topics to avoid repetition * **Consider seasonality**: Plan content around relevant seasons or events ### Tracking * **Monitor status**: Regularly check the status of your content * **Track progress**: Monitor how many articles are in each stage * **Identify issues**: Quickly identify and resolve any problems * **Review performance**: Analyze which content performs best ### Organization * **Use filters**: Use filters to focus on specific content * **Group by topic**: Organize content by topic or keyword cluster * **Color code**: Use status indicators to quickly identify content state * **Regular reviews**: Regularly review and update your calendar ## Common Issues ### Content Overlapping **Problem**: Multiple articles scheduled for the same time. **Solution**: * Spread content throughout the week or month * Adjust schedules to avoid overlaps * Consider publishing frequency and capacity ### Missing Content **Problem**: Gaps in your content calendar with no scheduled content. **Solution**: * Plan content in advance * Use auto-publish to fill gaps * Generate articles ahead of time * Schedule content regularly ### Status Confusion **Problem**: Unclear what status an article is in. **Solution**: * Review status indicators regularly * Check article details for current status * Update status manually if needed * Contact support if status seems incorrect ## Next Steps * Learn about [auto-publish](/calendar/auto-publish) to automate your publishing schedule * Explore [content planning](/keywords/content-planning) to organize your content strategy * Review [publishing articles](/articles/publish-articles) for publishing workflows # Cursor, Claude, and more Source: https://docs.genseo.co/chatgpt/more-ai-clients Use the same Genseo MCP endpoint in ChatGPT today and in Cursor, Claude, and Codex as clients roll out. The Genseo **ChatGPT app** is the primary packaged experience today: OAuth, starter prompts, and reviewer-tested flows. See [Genseo in ChatGPT](/developers/chatgpt). The same hosted MCP server powers other clients: ```text theme={null} https://api.genseo.co/mcp ``` ## Availability | Client | Status | | - | - | | **ChatGPT** | Live app with OAuth | | **Cursor** | MCP and plugin package; marketplace experience planned | | **Claude** | Plugin and `.mcp.json` for developer install; broader marketplace planned | | **Codex / other MCP hosts** | Remote HTTP MCP with OAuth or API key | Until a marketplace listing is live for Cursor or Claude, use [AI Plugins](/developers/plugins) and [MCP Server](/developers/mcp) with a project-bound API key for local development, or OAuth where the host supports it. ## Same rules everywhere 1. List projects and select **one** `project_id` per chat. 2. Prefer **stored** visibility and audit reads in conversational UIs. 3. Confirm before publish, tracking runs, or audits that consume quota. ## Developers Full wiring, CLI stdio mode, and tool list: [Developer platform](/developers/overview), [MCP tools](/developers/mcp-tools). # Agent Autopilot Source: https://docs.genseo.co/developers/agent-autopilot Enable controlled autonomous Genseo workflows in one project. Requires dashboard opt-in and role checks. Agent Autonomy is a project-level safety switch. A user must enable it in **Project → Brand → API / Developer** before an OAuth-connected agent can run write, generation, publishing, audit, Issue or Autopilot actions without individual confirmations. ## Autonomous workflow 1. List projects and select exactly one for the chat. 2. Read Site Health, open Issues, evidence and affected pages. 3. Modify the customer website through an independently authorized CMS, shop or repository connector. 4. Mark only the fixed issue/page occurrences as done. 5. Start one recheck and poll the current audit status. 6. Treat newly detected or regressed Issues as open work. Genseo diagnoses and verifies site and content work for AI visibility. It cannot edit an arbitrary website unless the agent also has a write-capable Webflow, Shopify, WordPress, Wix, Framer or repository connection. ## Always excluded OAuth-connected agents cannot use this connector to manage billing, users, team permissions, raw credentials, project creation, project deletion, or other destructive deletion actions. Connecting a new CMS and approving OAuth remain human actions. Project-bound API endpoints retain keyword, post and webhook removal for deliberate non-OAuth administration, but Autopilot cannot invoke those removals. Disabling Agent Autonomy immediately blocks subsequent OAuth write operations. Read-only inspection remains available while the OAuth grant and project membership are valid. ## Limits * 30 requests per minute and 5,000 per UTC day for each OAuth connection or API key. * 10 write requests per minute per connection. * 150 requests per minute and 25,000 per UTC day across a workspace. * One Audit/Recheck start per project every ten minutes, six per project per day and 25 per workspace per day. * Monthly plan limits for Audit pages, keyword generation and AI costs still apply. When a limit is reached, stop and honor `Retry-After`; do not create a rapid retry loop. # Agent guidelines Source: https://docs.genseo.co/developers/agent-guidelines Rules for AI agents using Genseo: project selection, reads before writes, publish confirmation, and rate limits. Agents can be powerful Genseo users, but they must operate inside strict project and safety boundaries. ## Required startup behavior Every agent should call `/me`, `/projects`, `genseo me`, `genseo_me`, or `genseo_projects_list` first. Use the response to learn: * Which projects are authorized * Which single Project ID the user selected for this chat * Which domain the project represents * Whether the key is valid Agents must never guess Project IDs or silently switch projects. Every project tool must include the selected `project_id`. ## Project boundaries OAuth agents may list the connected account's accessible projects. They must not access unlisted projects, combine customer data, create projects, or inspect billing. A `403 project_forbidden` response is final. ## Safe writing When writing data: * Prefer draft creation before publish actions. * Read a post before patching it. * Preserve existing user content unless the user clearly asks for replacement. * Send only intentional changes in update requests. * Do not retry unsafe writes blindly after network failures. ## Publishing Publishing can affect a live website. OAuth agents can publish without per-action confirmation only after the user enables Agent Autonomy for the selected project. Credentials, integrations, billing, team access, and project deletion remain human-controlled. ## Async behavior Treat `202 Accepted` as successful queueing. Continue by polling, reading the affected resource later, or telling the user generation is running. ## Retry behavior * Treat `403` errors as final. * Treat `429` errors as final until `Retry-After` has elapsed, then use exponential backoff. * Retry temporary `5xx` errors carefully. * Do not retry validation errors without changing the request. * Do not retry publish calls blindly. ## Integration readiness Before publishing, check integrations. If the API returns `integration_not_configured` or `mapping_required`, guide the user to configure the integration or save the missing mapping first. # API keys Source: https://docs.genseo.co/developers/api-keys Create Genseo project API keys (gs_live_) for the Public API, CLI, and local MCP. One key, one project. API keys are created inside the Genseo app and are always bound to one project. A key for one project cannot access another project, even when both projects are in the same workspace. For a hosted connector that must let an agency select among multiple customer projects, use [OAuth](/developers/oauth). OAuth is account-bound, lists accessible projects, and still requires an explicit `project_id` on every project operation. ## Where to find API keys Open the Genseo app and go to: ```text theme={null} Project → Brand → API / Developer ``` The page shows the values a developer, CLI, or agent needs: * **API key**: the secret token used for authentication * **Project ID**: the only project this key can access * **API base URL**: `https://api.genseo.co/v1` ## Create a key 1. Enter a clear key name, for example `Claude agent`, `Production CLI`, or `Zapier automation`. 2. Click **Create API key**. 3. Copy the full secret immediately. The full secret is shown after creation. Store it in a password manager or secret manager before leaving the page. ## Key format New keys use the `gs_live_` prefix: ```text theme={null} gs_live_... ``` The UI may show a shortened version such as: ```text theme={null} gs_live_Vy_kAzgxl4rg***... ``` Use the copy button to copy the full key when it is available in the app. Do not type keys manually. ## Naming rules API key names are required. Empty names are rejected. Names must be unique inside the same project. If a key named `CLI` already exists, create a different name such as `CLI production` or revoke the old key first. ## Scopes Grant only the scopes required by the automation: | Area | Read scopes | Write scopes | | - | - | - | | Projects | `projects:read` | `projects:write` | | Audits and pages | `audits:read`, `pages:read` | `audits:write` | | Issues | `issues:read` | `issues:write` | | Opportunities | `opportunities:read` | `opportunities:write` | | Keywords | `keywords:read` | `keywords:write`, `keywords:generate` | | Posts | `posts:read` | `posts:write`, `posts:generate`, `posts:publish` | | Products | `products:read` | `products:write` | | Competitors, FAQs and CTAs | `brand-data:read` | `brand-data:write` | | Autopilot | `autopilot:read` | `autopilot:write` | | Integrations and webhooks | `integrations:read` | `integrations:write`, `webhooks:write` | An API key never receives access to billing, administration, teams, account management, project creation or deletion, uploads, or raw credentials. ## Delete or revoke a key Deleting a key revokes it immediately. Any CLI, MCP server, agent, or integration using that key will stop working. Recommended replacement flow: 1. Create a new key. 2. Update the client, environment variable, or secret manager. 3. Test the new key with `GET /me` or `genseo me`. 4. Delete the old key. ## Safe storage Do: * Store keys in a secret manager, `.env` file outside version control, or your MCP client's encrypted environment storage. * Use separate keys for production, local development, and each agent when possible. * Revoke keys you no longer use. Do not: * Commit keys to Git. * Put keys in frontend code. * Put keys in URLs. * Share keys in screenshots or support chats. * Log full keys in your own application. ## MCP and plugin clients For local Claude, Codex, Cursor, and other MCP clients, store the key in an environment variable named `GENSEO_API_KEY` or in the client's encrypted secret storage. See [MCP Server](/developers/mcp) for client-specific configuration and [AI Plugins](/developers/plugins) for the shared Claude and Codex plugin package. # ChatGPT app Source: https://docs.genseo.co/developers/chatgpt Install Genseo in ChatGPT with OAuth. Read AI visibility, site health, and drafts for one project per chat. The Genseo ChatGPT app connects your Genseo account to ChatGPT through the hosted MCP endpoint. You sign in with OAuth, pick one project per chat, and use natural language to read **AI visibility** (prompts, trends, competitors, citations), **site health** and issues, or create drafts when your role and Agent Autonomy settings allow. Cursor and Claude will use the same MCP endpoint as marketplace support expands. See [More AI clients](/chatgpt/more-ai-clients). ## Who this is for * Marketers and founders who want Genseo inside ChatGPT without copying API keys. * Teams already using Genseo who want quick summaries of audits, issues, visibility, and posts. Developers building custom backends should use the [Public API](/developers/public-api) or [MCP server](/developers/mcp) directly. ## Connect in ChatGPT 1. Open ChatGPT and add a remote MCP connection (Developer mode or Apps, depending on your account). 2. Use this endpoint: ```text theme={null} https://api.genseo.co/mcp ``` 3. Complete browser sign-in to Genseo and approve the requested access. 4. In chat, ask: `List my accessible Genseo projects and ask which one to use.` 5. Choose one project. Every later action uses that project's ID. Connection details and token behavior are documented under [OAuth connection](/developers/oauth). ## What you can ask | Area | Examples | | - | - | | AI visibility | Visibility trend, active prompts, competitors, cited sources (stored data) | | Site health | Health summary, open issues by severity, audit status | | Content | List posts, create a draft, generate content, publish after you confirm | | Keywords | List, add, or generate keyword ideas for the selected project | Starter prompts ship with the public plugin package and match these flows. ## Rules the app follows 1. **One project per chat**: The assistant lists projects, you select one, and it sends that `project_id` on every project tool. 2. **No silent publish**: Publishing goes through your configured CMS integration. The assistant should confirm unless you have enabled autonomous publishing for that project. 3. **No account admin**: OAuth does not expose billing, team management, project creation, or project deletion. 4. **Read-only viewers**: Viewer roles cannot mutate data. ## What the app does not do * Change subscription or billing. * Delete projects or bypass Genseo role checks. * Store your Genseo password inside ChatGPT (OAuth tokens only, revocable in Genseo under **Project → Brand → API / Developer → OAuth connector access**). ## Build your own client Same endpoint and tools power Claude, Cursor, Codex, and other MCP clients. See [MCP Server](/developers/mcp), [AI Plugins](/developers/plugins), and [MCP tool reference](/developers/mcp-tools). ## Support and policies * [Developer integrations privacy](/developers/plugin-privacy) * [Privacy policy](https://www.genseo.co/legal/privacy-policy?utm_source=docs\&utm_medium=documentation\&utm_campaign=legal-privacy) * [Terms](https://www.genseo.co/legal/terms?utm_source=docs\&utm_medium=documentation\&utm_campaign=legal-terms) * Email: `support@genseo.co` Sign up free, connect your site, then add Genseo in ChatGPT. ## Frequently asked questions ### How do I connect Genseo to ChatGPT? Add remote MCP `https://api.genseo.co/mcp`, complete Genseo OAuth sign-in, then ask the assistant to list your projects and choose one for the conversation. ### What can I ask the Genseo ChatGPT app? Stored AI visibility (trends, prompts, competitors, citations), site health and open site issues, post lists, drafts, and keyword ideas for the selected project. Publishing requires confirmation unless autonomous publishing is enabled for that project. ### Does the ChatGPT app work with Cursor or Claude? The ChatGPT listing is for OpenAI's product today. Cursor and Claude connect to the same MCP endpoint; see [Cursor, Claude, and more](/chatgpt/more-ai-clients). ### Can ChatGPT change my Genseo billing or delete projects? No. OAuth tools exclude billing, team admin, project creation, and project deletion. # CLI Source: https://docs.genseo.co/developers/cli Install @genseo/cli for login, scripts, Public API calls, and a local stdio MCP bridge to Genseo. The Genseo CLI is distributed as the public npm package `@genseo/cli`. It uses the same project-bound access model as the Public API. ## Install Install globally when you want the `genseo` command available everywhere: ```bash theme={null} npm install -g @genseo/cli ``` Or run without a global install: ```bash theme={null} npx -y --package @genseo/cli genseo login ``` Use `npx` for quick tests, CI jobs, or machines where you do not want a global package. Use global install for everyday local use. ## Login Browser-based login uses OAuth Device Flow: ```bash theme={null} genseo login ``` The CLI prints a URL like this: ```text theme={null} https://app.genseo.co/developer/device?user_code=ABCD-1234&utm_source=docs&utm_medium=documentation&utm_campaign=cli-device-auth ``` Open it, choose the project, and approve access. The CLI stores the returned project-bound key in: ```text theme={null} ~/.genseo/config.json ``` Manual API-key login is also supported: ```bash theme={null} genseo login --api-key gs_live_... ``` You can also use environment variables: ```bash theme={null} export GENSEO_API_BASE=https://api.genseo.co/v1 export GENSEO_API_KEY=gs_live_... ``` ## Logout ```bash theme={null} genseo logout ``` ## Identity ```bash theme={null} genseo me ``` Use this after login to confirm which project the CLI can access. ## Project ```bash theme={null} genseo project get ``` The CLI intentionally works with one authorized project at a time. It does not list all projects and it does not create projects. ## Keywords ```bash theme={null} genseo keywords list ``` ```bash theme={null} genseo keywords add "seo automation software" ``` ```bash theme={null} genseo keywords add "seo automation software" --volume 1200 --kd 34 --intent commercial ``` ```bash theme={null} genseo keywords generate ``` ```bash theme={null} genseo keywords metrics "seo automation software" ``` ## Posts ```bash theme={null} genseo posts list ``` ```bash theme={null} genseo posts create --title "AI visibility workflow" ``` ```bash theme={null} genseo posts create --title "AI visibility workflow" --keyword-id keyword_123 ``` ```bash theme={null} genseo posts get post_123 ``` ```bash theme={null} genseo posts update post_123 --title "Updated title" --status draft ``` ```bash theme={null} genseo posts generate post_123 ``` ```bash theme={null} genseo posts publish post_123 ``` Publishing requires a configured integration. Ask the user before publishing unless autonomous publishing is explicitly enabled. ## Integrations ```bash theme={null} genseo integrations list ``` ```bash theme={null} genseo integrations fields webflow ``` ```bash theme={null} genseo integrations connect-url webflow ``` ```bash theme={null} genseo integrations mapping webflow --connection-id connection_123 --site-id site_123 --collection-id collection_123 --field-map-json '{"title":"name","content":"body"}' ``` ## Webhooks ```bash theme={null} genseo webhooks list ``` ```bash theme={null} genseo webhooks create --target-url https://example.com/hook --event post.published ``` ```bash theme={null} genseo webhooks delete webhook_123 ``` ## Output Most commands return JSON. Async generation commands may return accepted responses while work continues in Genseo. # API errors Source: https://docs.genseo.co/developers/errors Genseo Public API and MCP error codes, rate limits, and safe retry behavior for agents and backends. Genseo returns stable error codes so API clients, CLIs, and agents can respond predictably. ## Error response shape ```json theme={null} { "error": { "code": "project_forbidden", "message": "This API key cannot access the requested project." } } ``` ## Codes | Code | Meaning | Retry behavior | | - | - | - | | `invalid_api_key` | Missing, malformed, or unknown project API key | Do not retry without a new key | | `invalid_oauth_token` | The token is not a verified Genseo MCP token, has the wrong audience, or expired | Reauthorize or refresh; do not use a browser session token | | `key_revoked` | The key was deleted or revoked | Do not retry; create a new key | | `key_expired` | The key has expired | Do not retry; create a new key | | `insufficient_scope` | The key cannot perform the requested action | Do not retry without changing access | | `project_forbidden` | The request targets a different project | Final; do not retry | | `project_required` | A project operation omitted `project_id` | Select one accessible project and retry once | | `resource_not_found` | The resource is missing or belongs to another project | Do not assume it exists elsewhere | | `validation_error` | Request body or parameters are invalid | Fix the request before retrying | | `agent_autonomy_required` | An OAuth agent attempted a write while Agent Autonomy is disabled | Ask the user to enable it in the dashboard; do not retry automatically | | `action_not_available` | An agent attempted an excluded action such as destructive deletion | Perform the action manually in Genseo if intended | | `rate_limit_exceeded` | A credential, workspace, Audit, or Recheck limit was reached | Honor `Retry-After` and retry once after the reset | | `rate_limit_unavailable` | Distributed request protection is temporarily unavailable | Retry later; write side effects were not started | | `usage_limit_reached` | The project has reached an internal product limit | Wait, upgrade, or ask the user | | `audit_already_running` | The project already has an active Audit | Poll the current Audit instead of starting another | | `generation_already_running` | A generation job is already active | Wait and read the resource later | | `integration_not_configured` | Publishing requires a connected provider | Configure an integration first | | `mapping_required` | Provider field mapping is missing | Save mapping before retrying | ## Agent recommendations * Show the stable code to the user when an action fails. * Treat authorization and project-boundary errors as final. * Back off on rate limits. * Never work around a project boundary by trying another ID. * For generation conflicts, wait before checking the post or keyword state again. ## Rate-limit responses Rate limits are reserved before crawls, AI providers, publishing, or other chargeable side effects begin. A rejected request therefore does not start that work. ```http theme={null} HTTP/1.1 429 Too Many Requests Retry-After: 37 RateLimit-Limit: 30 RateLimit-Remaining: 0 RateLimit-Reset: 1788892860 Content-Type: application/json ``` ```json theme={null} { "error": { "code": "rate_limit_exceeded", "message": "Too many requests. Retry after the indicated delay.", "details": { "retryAfter": 37, "resetAt": "2026-09-08T18:41:00.000Z" } } } ``` MCP returns the same error details in its JSON fallback so an agent can pause for `retryAfter` seconds. Add small random jitter, retry only after the stated time, and stop after repeated failures. # MCP server Source: https://docs.genseo.co/developers/mcp Configure Genseo hosted MCP (api.genseo.co/mcp): Streamable HTTP, OAuth or API key, and agent tool access. The hosted Genseo MCP server exposes allowlisted AI visibility, site health, and content tools through Streamable HTTP. ChatGPT and other marketplace clients connect with OAuth; local clients may use a project-bound API key. Start with the [Genseo ChatGPT app](/developers/chatgpt) guide if you use ChatGPT. ## Endpoint ```text theme={null} https://api.genseo.co/mcp ``` OAuth can list all projects available to the connected account. A chat selects one project and sends its `project_id` with every later tool call. API keys continue to expose only their bound project. MCP never exposes billing, project creation, project deletion, credentials, or internal database operations. ## Before you connect You need: 1. A Genseo account and project. 2. OAuth support in the client, or a project-bound API key from **Project → Brand → API / Developer**. 3. An MCP client that supports Streamable HTTP or a local stdio process. Keep the key in environment or encrypted secret storage. Never place credentials in the MCP URL. ## Claude Code Create `.mcp.json` in your plugin or project configuration: ```json theme={null} { "mcpServers": { "genseo": { "type": "http", "url": "https://api.genseo.co/mcp", "headers": { "Authorization": "Bearer ${GENSEO_API_KEY}" } } } } ``` Set the key before starting Claude Code: ```bash theme={null} export GENSEO_API_KEY="gs_live_..." ``` Open `/mcp` and verify the `genseo` connection. ## Codex Use an environment-backed Bearer token: ```json theme={null} { "mcpServers": { "genseo": { "type": "http", "url": "https://api.genseo.co/mcp", "bearer_token_env_var": "GENSEO_API_KEY" } } } ``` Then set the key before starting Codex: ```bash theme={null} export GENSEO_API_KEY="gs_live_..." ``` ## Other MCP clients Configure the same Streamable HTTP endpoint and send this request header from the client's secure credential storage: ```text theme={null} Authorization: Bearer gs_live_... ``` Clients that do not support remote HTTP MCP can use the local CLI server described below. ## Local stdio MCP Install the Genseo CLI globally: ```bash theme={null} npm install -g @genseo/cli ``` Configure the client to launch `genseo-mcp`: ```json theme={null} { "mcpServers": { "genseo": { "command": "genseo-mcp", "env": { "GENSEO_API_BASE": "https://api.genseo.co/v1", "GENSEO_API_KEY": "${GENSEO_API_KEY}" } } } } ``` Or run without a global installation: ```json theme={null} { "mcpServers": { "genseo": { "command": "npx", "args": ["-y", "--package", "@genseo/cli", "genseo-mcp"], "env": { "GENSEO_API_BASE": "https://api.genseo.co/v1", "GENSEO_API_KEY": "${GENSEO_API_KEY}" } } } } ``` ## Verify the connection For OAuth-capable clients, add the remote endpoint and complete the browser sign-in described in [OAuth connection](/developers/oauth). Then ask the agent: ```text theme={null} List my Genseo projects and let me select one for this chat. ``` A successful connection calls `genseo_me` or `genseo_projects_list`. Select one returned Project ID and keep it fixed for the chat. ## Available tools | Area | Read tools | Write tools | | - | - | - | | Account and project | `genseo_me`, `genseo_projects_list`, `genseo_project_get` | `genseo_project_update` | | AI visibility | `genseo_visibility_overview`, `genseo_visibility_prompts_list`, `genseo_visibility_prompt_get`, `genseo_visibility_quota` | `genseo_visibility_prompt_create`, `genseo_visibility_prompts_create`, `genseo_visibility_prompt_archive`, `genseo_visibility_prompt_restore`, `genseo_visibility_prompt_track` | | Audits and Issues | `genseo_audits_list`, `genseo_audit_current`, `genseo_site_health`, `genseo_pages_list`, `genseo_issues_list`, `genseo_issue_get` | `genseo_audit_start`, `genseo_audit_recheck`, `genseo_issue_update`, `genseo_issue_pages_update` | | Opportunities | `genseo_opportunities_list`, `genseo_opportunity_get` | `genseo_opportunity_update` | | Brand and Autopilot | `genseo_brand_list`, `genseo_autopilot_get` | `genseo_brand_create`, `genseo_autopilot_update`, `genseo_autopilot_bootstrap` | | Keywords | `genseo_keywords_list`, `genseo_keyword_metrics` | `genseo_keywords_create`, `genseo_keywords_generate` | | Posts | `genseo_posts_list`, `genseo_posts_get` | `genseo_posts_create_draft`, `genseo_posts_update`, `genseo_posts_generate`, `genseo_posts_publish` | | Integrations | `genseo_integrations_list`, `genseo_integration_fields`, `genseo_integration_connect_url` | `genseo_integration_mapping_save` | | Webhooks | `genseo_webhooks_list` | `genseo_webhooks_create`, `genseo_webhooks_delete` | Every tool includes a human-readable title, JSON input/output schema, structured output, OAuth metadata, and safety annotations. See the complete [MCP tool reference](/developers/mcp-tools). Removal tools are retained for project-bound API-key compatibility. OAuth-connected Autopilot calls to destructive deletion tools are rejected with `action_not_available`. ## Required agent behavior 1. Call `genseo_me` or `genseo_projects_list` first. 2. Select one returned project and include its ID in every project tool. 3. Read a post before updating it. 4. Prefer drafts before generation or publishing. 5. Check integrations before publishing. 6. Use autonomous writes only when Agent Autonomy is enabled for the selected project. Treat authorization and project-boundary errors as final. Back off after rate limits and treat `202 Accepted` as successful queueing. ## Plugin package For an installable package containing the MCP configuration and shared Agent Skills, use the public [Genseo MCP repository](https://github.com/Genseo-co/genseo-mcp) or follow the [AI Plugins guide](/developers/plugins). # MCP tool reference Source: https://docs.genseo.co/developers/mcp-tools Reference for Genseo MCP tools: visibility, audits, issues, posts, integrations, and Autopilot with project_id rules. Call `genseo_me` or `genseo_projects_list` first. Select one project for the chat and send its `project_id` with every project operation. Never guess or silently switch a project ID. ## Account and project | Tool | Access | Purpose | | - | - | - | | `genseo_me` | read | Authorization metadata and accessible projects | | `genseo_projects_list` | read | List projects (OAuth) or bound project (API key) | | `genseo_project_get` | read | Read one project by `project_id` | | `genseo_project_update` | write | Update allowlisted project settings | ## AI visibility | Tool | Access | Purpose | | - | - | - | | `genseo_visibility_overview` | read | KPIs, trend, competitors, sources, setup progress | | `genseo_visibility_prompts_list` | read | Active or archived prompts and latest metrics | | `genseo_visibility_prompt_get` | read | One prompt with series and model responses | | `genseo_visibility_quota` | read | Prompt quota and enabled tracking models | | `genseo_visibility_prompt_create` | write | Create one tracked prompt (no run) | | `genseo_visibility_prompts_create` | write | Create 1 to 50 tracked prompts (no run) | | `genseo_visibility_prompt_archive` | write | Archive a prompt, keep history | | `genseo_visibility_prompt_restore` | write | Restore an archived prompt | | `genseo_visibility_prompt_track` | write | Enqueue a billable tracking run (confirm with user) | ## Audits, issues, opportunities | Tool | Access | Purpose | | - | - | - | | `genseo_audits_list`, `genseo_audit_current` | read | Audit history and progress | | `genseo_audit_start`, `genseo_audit_recheck` | write | Start crawl or recheck (async, rate limited) | | `genseo_site_health`, `genseo_pages_list` | read | Health totals and page scores | | `genseo_issues_list`, `genseo_issue_get` | read | Issues with evidence and pages | | `genseo_issue_update`, `genseo_issue_pages_update` | write | Open, hide, or mark page occurrences done | | `genseo_opportunities_list`, `genseo_opportunity_get` | read | Prioritized opportunities | | `genseo_opportunity_update` | write | Set status open, done, or declined | ## Keywords, posts, brand | Tool | Access | Purpose | | - | - | - | | `genseo_keywords_list`, `genseo_keyword_metrics` | read | Keywords and stored metrics | | `genseo_keywords_create`, `genseo_keywords_generate`, `genseo_keyword_update`, `genseo_keyword_delete` | write | Manage keywords | | `genseo_posts_list`, `genseo_posts_get` | read | Posts in the project | | `genseo_posts_create_draft`, `genseo_posts_update`, `genseo_posts_generate`, `genseo_posts_publish`, `genseo_post_delete` | write | Draft, generate, publish, soft-delete | | `genseo_brand_list`, `genseo_brand_create` | read / write | Products, competitors, FAQs, CTAs | ## Integrations, webhooks, Autopilot | Tool | Access | Purpose | | - | - | - | | `genseo_integrations_list`, `genseo_integration_fields`, `genseo_integration_connect_url` | read | Readiness, fields, connect URL | | `genseo_integration_mapping_save` | write | Save field mapping | | `genseo_webhooks_list` | read | List webhooks | | `genseo_webhooks_create`, `genseo_webhooks_delete` | write | Create or delete webhooks | | `genseo_autopilot_get` | read | Autopilot config and readiness | | `genseo_autopilot_update`, `genseo_autopilot_bootstrap` | write | Update or bootstrap Autopilot | Every successful tool response includes machine-readable `structuredContent` and JSON text. Tool metadata describes read-only, destructive, idempotent, and open-world behavior. OAuth-connected Autopilot calls to destructive deletion tools are rejected with `action_not_available`. ## Example: list open issues ```json theme={null} { "project_id": "00000000-0000-4000-8000-000000000001", "status": "open", "severity": "high", "limit": 50 } ``` All IDs, domains, keys, and tokens in this documentation are placeholders. ## Related * [Genseo ChatGPT app](/developers/chatgpt) * [Public API](/developers/public-api) * [Agent guidelines](/developers/agent-guidelines) # OAuth connection Source: https://docs.genseo.co/developers/oauth Sign in to Genseo MCP with OAuth 2.1 and PKCE. List projects, pick one per chat, and call allowlisted tools. Genseo supports OAuth 2.1 with PKCE for hosted MCP connections. OAuth is the recommended connection method for the [Genseo ChatGPT app](/developers/chatgpt) and other connector marketplaces because users approve access in the browser and never copy an API key into the client. ## Connection flow 1. Add `https://api.genseo.co/mcp` as the remote MCP server. 2. Sign in to Genseo in the browser consent window. 3. Review and approve the requested access. 4. The client calls `genseo_projects_list` and asks which project this chat should use. 5. Every subsequent project tool includes that exact `project_id`. An OAuth grant can discover every project available through the connected Genseo account. It does not combine project data: membership and project access are checked again for every operation. ## OAuth metadata Protected Resource Metadata is available at: ```text theme={null} https://api.genseo.co/.well-known/oauth-protected-resource ``` The authorization server advertises authorization, token, PKCE and dynamic-client-registration endpoints through its OAuth metadata. Access tokens must target the resource `https://api.genseo.co/mcp`. ## Consent and revocation The consent screen explains that the connector can list account projects and use Genseo tools only inside an explicitly selected project. Disconnect the connector in the AI client or open **Project → Brand → API / Developer → OAuth connector access** and choose **Disconnect**. Revocation invalidates that client's active sessions and refresh tokens; connecting again requires a new browser consent. OAuth does not grant access to billing, team administration, credentials, project creation or project deletion. Live autonomous writes additionally require [Agent Autopilot](/developers/agent-autopilot) to be enabled for that project. ## API keys compared with OAuth | Authentication | Project access | Recommended use | | - | - | - | | OAuth | All projects available to the signed-in account; explicit `project_id` per tool | ChatGPT and hosted connectors | | `gs_live_` API key | Exactly one project | CLI, backend automation and local MCP clients | The existing CLI browser Device Flow continues to create a project-bound API key and is separate from marketplace OAuth. ## Marketplace acceptance scenarios Use placeholder accounts and IDs only. Before submission, verify these positive end-to-end scenarios: 1. A new OAuth client registers dynamically, completes PKCE S256 consent and refreshes an expired access token. 2. An agency user lists five accessible customer projects and selects one project for a chat. 3. The agent reads an Issue with evidence, fixes the page through a separate CMS connector, starts one Recheck and marks the verified occurrence done. 4. With Agent Autonomy enabled, the agent generates, schedules and publishes a post through an already connected provider. 5. Revoking and reconnecting the grant invalidates the old refresh token and produces a new working connection. Also verify these negative scenarios: 1. An ordinary Genseo browser-session token and a token with the wrong MCP audience both receive an authentication challenge. 2. A removed workspace member cannot read the former customer's project, even with a previously valid project ID. 3. A burst above a request, write, Audit or Recheck limit receives `429` and does not start a crawl, AI request or publish action. # Developer platform Source: https://docs.genseo.co/developers/overview Build on Genseo with the Public API, MCP server, and CLI. AI visibility, audits, content, and webhooks per project. Genseo's product center is **AI search visibility (AEO/GEO)**: prompt tracking, competitors, citations. The Developer Platform exposes the same project data to your apps and agents: visibility metrics, audits, issues, opportunities, keywords, posts, webhooks, and Autopilot. Genseo is not a traditional SERP SEO rank API. Project API keys bind to **one** project. OAuth connectors list all account projects but every call must include an explicit `project_id`. ## Choose an integration | Integration | Best for | Start here | | - | - | - | | ChatGPT app | ChatGPT users (OAuth, no API key) | [Genseo ChatGPT app](/developers/chatgpt) | | Public API | Backend apps and automation | [Public API](/developers/public-api) | | Remote MCP | Agents, Cursor, Claude, Codex | [MCP Server](/developers/mcp) | | OAuth | Hosted MCP sign-in | [OAuth connection](/developers/oauth) | | CLI | Scripts, CI, local stdio MCP | [CLI](/developers/cli) | | AI plugin | Skills plus MCP config package | [AI Plugins](/developers/plugins) | Product guides for marketers live under the **Product** tab, starting with [AI visibility](/product/ai-visibility). ## What is included in v1 * AI visibility overview, prompts, quota, and tracked prompt management * Public API and MCP with project-bound API keys or account-wide OAuth * Site Audits, health, pages, Issues, evidence, and Opportunities * Brand data and project-controlled Agent Autopilot * Keyword listing, creation, generation, and metrics refresh * Post listing, draft creation, reading, updating, generation, and publishing * Integration readiness checks, field discovery, connect URLs, and field mapping * Webhook listing, creation, and deletion ## What is intentionally not included * Creating projects from the Public API, CLI, or MCP * Workspace-wide API keys; account-wide access uses OAuth and current membership checks * Usage, billing, or internal limit reporting through the Public API * Direct database, SQL, Supabase, or internal RPC access * Cookie-session fallback authentication * Admin impersonation or `viewAs` behavior ## Recommended API flow 1. Connect with [OAuth](/developers/oauth), or create an API key under **Brand → API / Developer**. 2. Call `/me`, `/projects`, `genseo_me`, or `genseo_projects_list`. 3. Select exactly one returned Project ID for the chat. 4. Include that Project ID in every later project operation. 5. Create drafts before publishing. 6. Ask the user before publishing unless the user has explicitly enabled autonomous publishing. ## Base URL ```text theme={null} https://api.genseo.co/v1 ``` All v1 endpoints require a Bearer token in the `Authorization` header. ## MCP endpoint ```text theme={null} https://api.genseo.co/mcp ``` The hosted MCP server uses Streamable HTTP. Marketplace clients use OAuth; developer installations can also use a project-bound Bearer token stored in the client's environment or secret storage. Never place API keys in an MCP URL, source file, public repository, screenshot, or chat message. ## Open-source plugin package The public [Genseo MCP repository](https://github.com/Genseo-co/genseo-mcp) contains the Claude and Codex plugin manifests, shared Agent Skills, and client configuration. The Genseo application and hosted MCP implementation remain separate from this distribution package. # Developer privacy Source: https://docs.genseo.co/developers/plugin-privacy How Genseo processes data for the Public API, CLI, MCP server, and AI plugins. Supplements the privacy policy. Last updated: September 8, 2026 This notice explains how Genseo processes data when you use the Genseo Public API, CLI, remote MCP server, or AI plugins for Claude, ChatGPT, Codex, and other compatible clients. It supplements the [Genseo Privacy Policy](https://www.genseo.co/legal/privacy-policy?utm_source=docs\&utm_medium=documentation\&utm_campaign=legal-privacy). ## Controller and contact The service is provided by: ```text theme={null} trinker media gmbh Angelo-Eustacchio-Gasse 62 8010 Graz Austria ``` Privacy and support requests: `support@genseo.co` ## Data processed Developer integrations process only the data needed to authenticate the connection and perform the operation requested by the user or their AI client. This may include: * Account, workspace, and project identifiers * API key or OAuth authorization metadata * Project configuration and website domain * Accessible-project listings for an OAuth-connected account * Site Audit history, pages, scores, Issues, evidence and Opportunities * Keywords and keyword metrics * Article titles, drafts, generated content, metadata, and publication status * Publishing integration status and field mappings * Webhook configuration * Technical request information such as timestamps, IP addresses, client identifiers, error details, and rate-limit events The MCP server does not request access to Claude or ChatGPT conversation history, memories, unrelated files, contacts, calendars, email, or data outside the connected Genseo account. Although OAuth can list all projects available to that account, each project operation is isolated by an explicit `project_id` and a fresh membership check. ## How data is used Genseo processes this data to: * Authenticate and authorize the connection * List projects available through the connected account and enforce project and permission boundaries * Return Audit, page, Issue, evidence, Opportunity and Autopilot information * Return project, keyword, article, integration, and webhook information * Create or update content when requested * Generate keywords or article content when requested * Publish approved content through a configured CMS integration * Detect abuse, investigate errors, enforce rate limits, and maintain service security * Provide support and improve reliability Genseo does not sell personal data obtained through developer integrations. ## AI clients and instructions The plugin repository contains only public configuration and workflow instructions. It does not contain user credentials or private Genseo application data. Prompts and conversation context remain with the AI client unless the client sends specific values as arguments to a Genseo MCP tool. Genseo receives only the tool name and arguments required to perform that request. Rate-limit telemetry contains operational bucket type, limit, reset time and authentication type; it does not contain prompts, tool bodies, tokens, API keys or credentials. ## Authentication and permissions Developer API keys are bound to one Genseo project and a defined set of scopes. OAuth grants belong to a user account and may list multiple projects available through that user's workspace memberships. Membership is checked again for every operation, so removing a member also removes their connector access. Users can revoke keys in Genseo at any time. Marketplace connections use authorization-code OAuth with PKCE, refresh tokens and a dedicated MCP audience. They require browser consent and can be disconnected from the AI client or revoked in Genseo. Ordinary Genseo browser-session tokens and credentials in MCP URL query parameters are rejected. ## Service providers and external publishing Genseo uses service providers for hosting, databases, authentication, monitoring, email, and product operations, as described in the main Genseo Privacy Policy. When a user explicitly publishes content, Genseo sends the required article data to the CMS provider configured by that user, such as Webflow, Shopify, WordPress, Wix, or Framer. Those providers process data under their own terms and privacy policies. ## Retention and deletion * Project content and configuration are retained while the project or account remains active, unless the user deletes them earlier. * Revoked API keys and authorization records may be retained as necessary for security, fraud prevention, and audit purposes. * Technical logs are retained only as long as reasonably necessary for security, troubleshooting, service reliability, and legal obligations. * Data may remain in encrypted backups for a limited period until routine backup rotation completes. Users can delete content in Genseo, revoke developer credentials, disconnect integrations, or request account and personal-data deletion by contacting `support@genseo.co`. ## Security Genseo uses HTTPS for data in transit and applies access controls and project-level authorization. Users must keep API keys confidential and should grant only the scopes required for their workflow. If a credential may have been exposed, revoke it immediately and create a replacement. ## User rights Depending on applicable law, users may request access, correction, deletion, restriction, portability, or objection regarding their personal data. Requests can be sent to `support@genseo.co`. For additional information about legal bases, international transfers, cookies, subprocessors, and GDPR rights, see the [Genseo Privacy Policy](https://www.genseo.co/legal/privacy-policy?utm_source=docs\&utm_medium=documentation\&utm_campaign=legal-privacy). # AI plugins Source: https://docs.genseo.co/developers/plugins Install the Genseo plugin package for Claude, Codex, and Cursor with MCP config and Agent Skills. The Genseo plugin package adds workflow instructions and a connection to the hosted MCP server. For **ChatGPT**, use the [Genseo ChatGPT app](/developers/chatgpt) with OAuth instead of copying an API key from this repo. Public repository: ```text theme={null} https://github.com/Genseo-co/genseo-mcp ``` Agents learn to list projects, select one project per chat, pass `project_id` on every tool, inspect evidence before site changes, and respect Agent Autonomy and rate limits. ## Package contents | Path | Purpose | | - | - | | `.claude-plugin/plugin.json` | Claude plugin metadata | | `.codex-plugin/plugin.json` | Codex plugin metadata | | `.cursor-plugin/plugin.json` | Cursor plugin metadata | | `.mcp.json` | Remote MCP configuration (OAuth-first) | | `skills/genseo/SKILL.md` | Shared Genseo operating workflow | | `skills/setup/SKILL.md` | Connection and authentication troubleshooting | No Genseo application source code or credentials ship in this repository. ## Claude Code ```bash theme={null} git clone https://github.com/Genseo-co/genseo-mcp.git cd genseo-mcp export GENSEO_API_KEY="gs_live_..." claude --plugin-dir . ``` Open `/mcp` in Claude Code and confirm the `genseo` server is connected. ## Codex Set a project-bound API key before launching Codex, or use the HTTP MCP block on [MCP Server](/developers/mcp): ```bash theme={null} export GENSEO_API_KEY="gs_live_..." ``` ## Cursor Install from the Cursor plugin directory using the same repository, or add the remote MCP URL from [MCP Server](/developers/mcp). Prefer OAuth when the client supports marketplace sign-in; otherwise use a project-bound key in environment storage only. ## Authentication | Method | Use when | | - | - | | OAuth | ChatGPT and other hosted connectors ([OAuth connection](/developers/oauth)) | | `gs_live_` API key | Local Claude, Codex, Cursor, CI, and stdio MCP | Publishing changes a live website through a configured CMS integration. Review the target post and confirm before publishing. ## Verify the connection 1. Confirm the `genseo` MCP server is connected. 2. Call `genseo_me` or `genseo_projects_list`. 3. Select one project and verify name and domain. 4. List a small set of keywords or posts. 5. Test writes with a draft, not a live publish. ## Support * [Developer platform overview](/developers/overview) * [Developer integrations privacy](/developers/plugin-privacy) * [Privacy policy](https://www.genseo.co/legal/privacy-policy?utm_source=docs\&utm_medium=documentation\&utm_campaign=legal-privacy) * Email: `support@genseo.co` # Public API Source: https://docs.genseo.co/developers/public-api Genseo REST API at api.genseo.co/v1: visibility, audits, posts, webhooks. OAuth or project API keys. The Public API exposes explicit, allowlisted Genseo operations. API keys stay project-bound; OAuth grants can list accessible projects and then operate on one explicit project per request. ## Base URL ```text theme={null} https://api.genseo.co/v1 ``` ## Authentication Send an OAuth access token or project-bound API key as a Bearer token: ```bash theme={null} curl https://api.genseo.co/v1/me -H "Authorization: Bearer gs_live_..." ``` There is no cookie fallback. Ordinary browser-session JWTs are rejected. OAuth access tokens must target `https://api.genseo.co/mcp`. ## Project matching Most endpoints include `projectId`. It must match the API key's project or a project available through the OAuth user's current workspace memberships. Unauthorized project selection returns `403 project_forbidden` and must not be retried with guessed IDs. ## Endpoints | Method | Path | Purpose | | - | - | - | | `GET` | `/me` | Inspect the current key and project | | `GET` | `/projects` | List accessible projects | | `GET` | `/project` | Get the key's project | | `GET` | `/projects/{projectId}` | Get the matching project by ID | | `PATCH` | `/projects/{projectId}` | Update allowlisted project settings | | `GET` | `/projects/{projectId}/keywords` | List keywords | | `POST` | `/projects/{projectId}/keywords` | Add a custom keyword | | `PATCH/DELETE` | `/projects/{projectId}/keywords/{keywordId}` | Update or remove a keyword | | `POST` | `/projects/{projectId}/keywords/generate` | Generate keyword ideas | | `POST` | `/projects/{projectId}/keyword-metrics` | Refresh keyword metrics | | `GET` | `/projects/{projectId}/posts` | List posts | | `POST` | `/projects/{projectId}/posts` | Create a draft post | | `GET` | `/projects/{projectId}/posts/{postId}` | Read one post | | `PATCH` | `/projects/{projectId}/posts/{postId}` | Update a post | | `DELETE` | `/projects/{projectId}/posts/{postId}` | Soft-delete a post; unavailable to OAuth Autopilot | | `POST` | `/projects/{projectId}/posts/{postId}/generate` | Generate post content | | `POST` | `/projects/{projectId}/posts/{postId}/publish` | Publish a post | | `GET` | `/projects/{projectId}/integrations` | List integration status | | `POST` | `/projects/{projectId}/integrations/{provider}/connect-url` | Create an integration connect URL | | `GET` | `/projects/{projectId}/integrations/{provider}/fields` | List provider fields | | `POST` | `/projects/{projectId}/integrations/{provider}/mapping` | Save provider field mapping | | `GET` | `/projects/{projectId}/webhooks` | List webhooks | | `POST` | `/projects/{projectId}/webhooks` | Create a webhook | | `DELETE` | `/projects/{projectId}/webhooks/{webhookId}` | Delete a webhook | | `GET/POST` | `/projects/{projectId}/audits` | List or start Site Audits | | `GET` | `/projects/{projectId}/audits/current` | Read current Audit progress | | `GET` | `/projects/{projectId}/audits/{auditId}` | Read one Audit from project history | | `POST` | `/projects/{projectId}/audits/recheck` | Recheck applied fixes | | `GET` | `/projects/{projectId}/site-health` | Read health summary | | `GET` | `/projects/{projectId}/pages` | List audited pages | | `GET` | `/projects/{projectId}/issues` | Filter Issues by status and severity | | `GET/PATCH` | `/projects/{projectId}/issues/{issueId}` | Read, open or hide an Issue | | `POST` | `/projects/{projectId}/issues/page-status/bulk` | Set up to 100 occurrences open/done | | `GET` | `/projects/{projectId}/opportunities` | List prioritized Opportunities | | `GET/PATCH` | `/projects/{projectId}/opportunities/{id}` | Read or update an Opportunity | | `GET/POST` | `/projects/{projectId}/brand/{resource}` | Read or create brand data | | `GET/PATCH` | `/projects/{projectId}/autopilot` | Read or update Autopilot | | `POST` | `/projects/{projectId}/autopilot/bootstrap` | Bootstrap Autopilot | | `GET` | `/projects/{projectId}/visibility/overview` | AI visibility KPIs, trend, competitors, sources | | `GET` | `/projects/{projectId}/visibility/prompts` | List tracked visibility prompts | | `GET` | `/projects/{projectId}/visibility/prompts/{promptId}` | Read one prompt and series | | `GET` | `/projects/{projectId}/visibility/quota` | Prompt quota and enabled models | | `POST` | `/projects/{projectId}/visibility/prompts` | Create tracked prompts without starting a run | | `PATCH` | `/projects/{projectId}/visibility/prompts/{promptId}` | Archive or restore a prompt | | `POST` | `/projects/{projectId}/visibility/prompts/{promptId}/track` | Enqueue a visibility tracking run | ## Identity ### `GET /me` Returns API-key metadata and its bound project, or OAuth authorization metadata plus accessible projects. OAuth responses require explicit project selection. ```bash theme={null} curl https://api.genseo.co/v1/me -H "Authorization: Bearer gs_live_..." ``` Example response: ```json theme={null} { "apiKey": { "id": "key_123", "name": "Claude agent", "prefix": "gs_live_abcd", "lastUsedAt": "2026-06-20T12:00:00.000Z" }, "project": { "id": "47120f69-be45-4f32-bec9-f226f45748b6", "name": "Example GmbH", "domain": "example.com" } } ``` Agents should call this endpoint before doing anything else. ## Project ### `GET /project` Returns the project attached to the API key. OAuth clients use `GET /projects` and then `GET /projects/{projectId}`. ### `GET /projects/{projectId}` Returns the same project when `projectId` exactly matches the key's project. ## Keywords ### `GET /projects/{projectId}/keywords` Lists keywords for the project. ```bash theme={null} curl https://api.genseo.co/v1/projects/{projectId}/keywords -H "Authorization: Bearer gs_live_..." ``` ### `POST /projects/{projectId}/keywords` Adds a custom keyword. ```json theme={null} { "keyword": "seo automation software", "searchVolume": 1200, "keywordDifficulty": 34, "intent": "commercial" } ``` ### `POST /projects/{projectId}/keywords/generate` Starts keyword generation for the project. Generation may return `202 Accepted` when work continues asynchronously. ### `POST /projects/{projectId}/keyword-metrics` Refreshes metrics for one or more keywords. ```json theme={null} { "keywords": ["seo automation software", "ai seo tool"] } ``` ## Posts ### `GET /projects/{projectId}/posts` Lists posts for the project. ### `POST /projects/{projectId}/posts` Creates a draft post. ```json theme={null} { "title": "How AI visibility automation works", "keywordId": "keyword_123" } ``` ### `GET /projects/{projectId}/posts/{postId}` Reads one post. The post must belong to the same project as the key. ### `PATCH /projects/{projectId}/posts/{postId}` Updates allowlisted fields on a post. ```json theme={null} { "title": "Updated title", "status": "draft" } ``` Agents should preserve existing content when patching. Read the post first, then send only intentional changes. ### `POST /projects/{projectId}/posts/{postId}/generate` Starts or queues content generation for a post. ### `POST /projects/{projectId}/posts/{postId}/publish` Publishes through the project's configured integration. Agents should ask before publishing unless autonomous publishing is explicitly enabled by the user. ## Integrations ### `GET /projects/{projectId}/integrations` Lists connected providers and readiness status. ### `POST /projects/{projectId}/integrations/{provider}/connect-url` Creates a provider connect URL when supported. The user may still need to complete OAuth or provider authorization in the browser. ### `GET /projects/{projectId}/integrations/{provider}/fields` Lists available provider fields for mapping. ### `POST /projects/{projectId}/integrations/{provider}/mapping` Saves field mapping. ```json theme={null} { "connectionId": "connection_123", "siteId": "site_123", "collectionId": "collection_123", "fieldMap": { "title": "name", "content": "body" } } ``` ## Webhooks ### `GET /projects/{projectId}/webhooks` Lists webhooks. ### `POST /projects/{projectId}/webhooks` Creates a webhook endpoint. ```json theme={null} { "targetUrl": "https://example.com/genseo/webhook", "event": "post.published" } ``` ### `DELETE /projects/{projectId}/webhooks/{webhookId}` Deletes a webhook. The webhook must belong to the key's project. ## Pagination List endpoints support a conservative `limit` parameter where available. Clients should prefer small pages and retry `429` responses with backoff. ## Response safety Responses are allowlisted. The Public API does not return provider secrets, full API key hashes, internal database fields, billing internals, or workspace-wide data. ## Audit and Issue lifecycle Audit starts return `202 Accepted`. Poll `/audits/current`; do not repeatedly start new Audits. Read an Issue's recommendation and page evidence, fix the site through an authorized CMS or repository, mark only the fixed `{issue_id,page_id}` occurrences as `done`, and run one Recheck. A later Audit can reopen a recurrence. ```json theme={null} { "scope": { "type": "urls", "urls": ["https://example.test/services"] } } ``` ```json theme={null} { "status": "done", "items": [ { "issue_id": "00000000-0000-4000-8000-000000000002", "page_id": "00000000-0000-4000-8000-000000000003" } ] } ``` ## AI visibility Visibility endpoints are project-scoped. Read overview and prompt data before starting paid tracking runs. ### `GET /projects/{projectId}/visibility/overview` Returns KPIs, daily trend, competitors, cited sources, prompt summary, and setup progress for the requested period. ### `GET /projects/{projectId}/visibility/prompts` Lists active or archived prompts and latest mention, citation, and sentiment metrics where available. ### `POST /projects/{projectId}/visibility/prompts/{promptId}/track` Enqueues an external tracking run. Treat as potentially billable; confirm with the user before calling from an agent. ## Brand data and Autopilot Set `{resource}` to `products`, `competitors`, `faqs`, or `ctas`. Brand create requests accept at most 100 items and always bind them to the path's project; IDs and project ownership cannot be supplied through the payload. ```json theme={null} { "items": [ { "question": "What does the example service include?", "answer": "Replace this placeholder with approved brand information." } ] } ``` Autopilot updates accept only `enabled`, `publish_interval_days`, and `publish_weekdays`. OAuth writes require Agent Autonomy to have been enabled in the Genseo dashboard. ```json theme={null} { "enabled": true, "publish_interval_days": 7, "publish_weekdays": [2, 4] } ``` ## Rate limits | Boundary | Limit | | - | - | | OAuth connection or API key | 30/minute and 5,000/UTC day | | Writes per connection | 10/minute | | Workspace aggregate | 150/minute and 25,000/UTC day | | Audit/Recheck per project | One/10 minutes and six/UTC day | | Audit/Recheck per workspace | 25/UTC day | HTTP `429` uses code `rate_limit_exceeded` and includes `Retry-After`, `RateLimit-Limit`, `RateLimit-Remaining`, and `RateLimit-Reset`. Wait for `Retry-After` and then back off exponentially. Monthly plan quotas remain separate. # How Genseo works Source: https://docs.genseo.co/getting-started/how-it-works Learn the AEO/GEO workflow: track prompts, read competitors and citations, fix site health, act on opportunities, and optionally publish content. Genseo is built for **AI search visibility (AEO/GEO)**: the questions buyers ask in ChatGPT, Gemini, and Google AI Overviews, and whether your brand is mentioned, cited, and preferred over competitors. Site health keeps pages fetchable and citable. Content and CMS publishing are optional execution layers. ## 1. Create a project Add your domain and brand in [Genseo](https://app.genseo.co?utm_source=docs\&utm_medium=documentation\&utm_campaign=how-it-works-app). One project holds prompts, visibility history, audits, opportunities, keywords, and posts. ## 2. Track prompts (core loop) Define prompts that mirror real buyer questions. Genseo runs them on a schedule across [supported platforms](/visibility/tracking-platforms) and stores mentions, citations, sentiment, and competitor presence. See [Prompt tracking](/visibility/prompt-tracking). ## 3. Read competitors and citations See who AI models name instead of you and which domains they cite. Use that to prioritize citable pages, positioning, and outreach. [Competitors](/visibility/competitors), [Citations and sources](/visibility/citations-and-sources). ## 4. Site health and opportunities Crawl the site for issues that block fetchability or clarity, fix on your stack, recheck, and work through [Opportunities](/product/opportunities). [Site health](/product/site-health) summarizes scores and open issues. ## 5. Act on gaps (optional) Turn visibility gaps into [keywords](/keywords/keyword-basics) and [articles](/articles/generate-articles), then publish via [CMS integrations](/integrations/webflow) when you need new pages models can reference. ## 6. Use ChatGPT or the API The [ChatGPT app](/developers/chatgpt) reads stored visibility and site data (OAuth, one project per chat). [Cursor and Claude](/chatgpt/more-ai-clients) share the same MCP endpoint. Developers use the [Public API](/developers/public-api) and [MCP tools](/developers/mcp-tools). ## Who Genseo is for * Brands and agencies focused on **AI search share**, not only blue-link rankings * Marketing teams that need prompts, site health, and optional publishing in one project * Founders who want **daily AEO/GEO signal** on how AI describes their category ## Next steps * [Quick start](/getting-started/quick-start) * [AI visibility overview](/product/ai-visibility) * [ChatGPT app](/developers/chatgpt) ## Frequently asked questions ### Is Genseo AEO/GEO or a blog tool? Primary loop: AI visibility (prompts, competitors, citations). Articles and CMS are optional when you need citable content on your domain. ### How does Genseo help me win in ChatGPT answers? Genseo shows share of voice per prompt and which sources get cited. You improve through citable pages, brand presence, and site fixes; the platform measures progress on a schedule. ### Do I need developers to use Genseo? No for the web app and ChatGPT app. Use the [Public API](/developers/public-api) and [MCP](/mcp/overview) for automation. # Quick start Source: https://docs.genseo.co/getting-started/quick-start Create a Genseo project, add your first AI visibility prompts, and read scheduled tracking results in minutes. This guide focuses on **AI visibility**, Genseo's core product. Allow about 10 minutes. ## Step 1: Create a project 1. Sign up at [app.genseo.co](https://app.genseo.co/sign-up?utm_source=docs\&utm_medium=documentation\&utm_campaign=quick-start-signup). 2. Add a project with your brand domain and basic context. ## Step 2: Add tracked prompts 1. Open **AI Visibility** (or Tracking) in the project. 2. Add prompts buyers would ask in ChatGPT or Google, for example category comparisons or "best X for Y". 3. Stay within your plan's prompt quota. Details: [Prompt tracking](/visibility/prompt-tracking). ## Step 3: Wait for scheduled runs Genseo tracks prompts on a recurring schedule across [ChatGPT, Gemini, and AI Overviews](/visibility/tracking-platforms). You do not need to trigger every run manually for day-to-day monitoring. ## Step 4: Review the dashboard Check visibility KPIs, trend lines, [competitors](/visibility/competitors), and [cited sources](/visibility/citations-and-sources). Open individual prompts to see per-model results and sentiment where available. ## Step 5: Fix and improve 1. Open [Site health](/product/site-health) if you want crawl issues that affect citable pages on the same domain. 2. Use [Opportunities](/product/opportunities) for prioritized next tasks. 3. Optional: add [keywords and articles](/articles/generate-articles) or connect a [CMS](/integrations/webflow) when publishing is part of your workflow. ## Step 6: ChatGPT (optional) Install the [Genseo ChatGPT app](/developers/chatgpt), sign in with OAuth, select one project, and ask for visibility trends or open site issues using stored data. ## Common issues **No data yet**: New prompts need at least one completed tracking run before charts populate. **Quota**: Prompt limits depend on your plan. See [Plans and limits](/billing-support/plans-limits-upgrades). ## Next steps * [How Genseo works](/getting-started/how-it-works) * [AI visibility overview](/product/ai-visibility) * [Developer platform](/developers/overview) ## Frequently asked questions ### What is the fastest way to start with Genseo? Create a project, add a few buyer-intent prompts in AI Visibility, wait for scheduled tracking runs, then review the overview dashboard. ### Do I need a CMS connected on day one? No. AI visibility and site health work from your domain and prompts. Connect [Webflow, Shopify, or other CMS](/integrations/webflow) only when you want to publish articles from Genseo. ### Why do I see empty charts after adding prompts? Charts need at least one completed tracking run. New prompts may take until the next scheduled run before data appears. # Overview Source: https://docs.genseo.co/index Genseo is an AI search visibility (AEO/GEO) platform. Track prompts on ChatGPT, Gemini, and AI Overviews, plus site health, opportunities, and optional publishing. Genseo helps brands win **AI search visibility**: how often assistants mention you, cite your pages, and name competitors on the prompts that matter. Tracking runs on a schedule; site health and opportunities turn gaps into action. Optional content and CMS publishing support execution when you need long-form pages models can cite. ## Core products Daily prompt tracking, mentions, sentiment, competitors, and cited sources (AEO/GEO). Add prompts, read trends, improve share of voice in AI answers. Crawl issues and scores so pages stay fetchable and citable. Prioritized AEO/GEO tasks tied to visibility and site gaps. Optional articles and CMS integrations to ship citable pages. ChatGPT today; Cursor, Claude, and other MCP clients on the same endpoint. ## Build and automate Streamable HTTP at `api.genseo.co/mcp` for agents and custom clients. Project-scoped REST API for visibility, audits, posts, and webhooks. ## Get started First prompts tracked in the app in minutes. AEO/GEO-first workflow across the platform. Create a free Genseo account. ## Frequently asked questions ### What is Genseo? Genseo is an **AI search visibility (AEO/GEO)** platform. It tracks prompts across ChatGPT, Gemini, and Google AI Overviews, with competitors, citations, site health, and opportunities. Optional article and CMS tools help you publish pages models can cite. ### Does Genseo replace traditional SEO tools? No. Genseo is built for **AI answers**, not SERP rank tracking alone. Site health supports technical quality of pages you want cited in AI search. ### Which AI platforms does Genseo track? ChatGPT, Gemini, and AI Overviews. See [Tracking platforms](/visibility/tracking-platforms). ### Can I use Genseo inside ChatGPT? Yes. The [ChatGPT app](/developers/chatgpt) uses OAuth. Cursor and Claude use the same [MCP server](/mcp/overview) as those clients roll out. ### Where is the API documentation? **Developers** tab: [Public API](/developers/public-api). **MCP Server** tab: apps and `https://api.genseo.co/mcp`. # Framer integration Source: https://docs.genseo.co/integrations/framer Sync optional Genseo articles to a Framer CMS collection from your visibility project. The Genseo Framer integration syncs articles from your Genseo project to a Framer CMS collection.