Skip to main content

Blogger Destination

Nexla's bi-directional connectors allow data to flow both to and from any location, making it simple to create a FlexFlow data flow that sends data to a Blogger location.
blogger_api.png

Blogger

Create a Blogger Destination

  1. Click the + icon on the Nexset that will be sent to the Blogger destination, and select the Send to Destination option from the menu.

  2. Select the Blogger connector from the list of available destination connectors. Then, select the credential that will be used to connect to the Blogger account, and click Next; or, create a new Blogger credential for use in this flow.

  3. In Nexla, Blogger destinations can be created using pre-built endpoint templates, which expedite destination setup for common Blogger endpoints. Each template is designed specifically for the corresponding Blogger endpoint, making destination configuration easy and efficient.
    • To configure this destination using a template, follow the instructions in Configure Using a Template.

    Blogger destinations can also be configured manually, allowing you to send data to Blogger endpoints not included in the pre-built templates or apply further customizations to exactly suit your needs.
    • To configure this destination manually, follow the instructions in Configure Manually.

Configure Using a Template

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Blogger endpoints. Each template is designed specifically for the corresponding Blogger endpoint, making destination setup easy and efficient.

  • To configure this destination using a template, select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

    Create a Post

    This endpoint creates a new post on a Blogger blog. Use it to programmatically publish content authored in an upstream CMS, marketing tool, or AI pipeline directly to Blogger.

    • Enter the numeric blog ID in the Blog Id field. This identifies which blog the post will be created on.
    • Each record in the upstream Nexset must include at least a title field and a content field (the HTML body). Optional fields supported by Blogger include labels (an array of tag strings), customMetaData, and location for geotagged posts.
    • The full record is sent as the JSON body of the POST /blogs/{blog_id}/posts call. Use the Nexla transform layer to shape upstream attributes into the field names expected by Blogger.
    • Set the Is Draft field to true to save the post as a draft instead of publishing immediately. Drafts can later be published via the Publish Post endpoint.
    • Set the Fetch Body field to true to have Blogger return the full post body in the API response, and Fetch Images to true to include image metadata.

    For complete payload reference, see the Posts: insert reference.

    Update a Post

    This endpoint replaces an existing post with the full contents of the request body. Use it when the upstream system always provides a complete representation of the post — for example, when re-publishing content from a CMS that maintains canonical state.

    • Enter the numeric blog ID in the Blog Id field, and the numeric post ID in the Post Id field. Post IDs can be obtained from the List Posts source endpoint.
    • The body of each PUT call is the full post payload, including title, content, and any optional fields such as labels. Fields omitted from the body will be cleared on the post.
    • Optionally, set the Revert field to true to revert the post to an earlier saved version, or Publish to true to publish the updated post immediately.

    Use Partially Update a Post instead when the upstream Nexset only carries the fields that should change.

    Partially Update a Post

    This endpoint applies a partial update to an existing post — only the fields present in the request body are modified, leaving all other fields untouched. Use it for incremental edits, such as updating only the labels or the title.

    • Enter the numeric blog ID in the Blog Id field, and the numeric post ID in the Post Id field.
    • The body of each PATCH call should contain only the attributes that should change (for example, {"title": "New title"} to rename a post). Use the Nexla transform layer to limit the outgoing record to the fields being updated.

    Delete Post

    This endpoint permanently deletes a post by blog ID and post ID. The deletion is irreversible from the API.

    • Enter the numeric blog ID in the Blog ID field. This field is required.
    • Enter the numeric post ID in the Post ID field. This field is required. Post IDs can be obtained from the List Posts source endpoint.

    Because deletion is irreversible, validate upstream data carefully before activating this destination. Consider routing through a Nexla transform that filters to only the posts that should genuinely be deleted.

    Publish Post

    This endpoint publishes a draft post or schedules a post for future publication. Use it as a follow-up to Create a Post (when Is Draft was set to true) or to release content on a publication calendar.

    • Enter the numeric blog ID in the Blog Id field, and the numeric post ID in the Post Id field.
    • Optionally, enter a future timestamp in RFC 3339 format (for example, 2026-07-01T09:00:00-00:00) in the Publish Date field to schedule the post for that time. If left blank, the post is published immediately.

    Revert Post to Draft

    This endpoint reverts a published or scheduled post back to draft state, removing it from public view without deleting the content. Use it to unpublish content that needs to be edited before re-release.

    • Enter the numeric blog ID in the Blog Id field, and the numeric post ID in the Post Id field.

    A reverted post can be re-published later via the Publish Post endpoint with no data loss.

    Create Page

    This endpoint creates a new static page on a Blogger blog. Pages are evergreen content (such as "About" or "Contact" pages), distinct from posts. Use it to provision standard pages programmatically when setting up new blogs.

    • Enter the numeric blog ID in the Blog Id field. This field is required.
    • Each record in the upstream Nexset must include a title field and a content field (the HTML body) at a minimum.
    • Set the Is Draft field to true to save the page as a draft, or leave it blank to publish immediately.

    Update Page

    This endpoint replaces an existing static page with the full contents of the request body. Use it when the upstream system maintains canonical page content and re-syncs the full page each run.

    • Enter the numeric blog ID in the Blog Id field, and the numeric page ID in the Page Id field. Page IDs can be obtained from the List Pages source endpoint.
    • The body of each PUT call should contain the full page payload — including title and content. Fields omitted from the body will be cleared.
    • Optionally, set the Publish field to true to ensure the updated page is published, or Revert to true to revert the page to draft.

    Use Patch Page instead when the upstream Nexset only carries the fields that should change.

    Patch Page

    This endpoint applies a partial update to an existing page — only the fields present in the request body are modified. Use it for incremental edits to a static page (for example, updating only the body content while leaving the title intact).

    • Enter the numeric blog ID in the Blog Id field, and the numeric page ID in the Page Id field.
    • The body of each PATCH call should contain only the attributes that should change. Use the Nexla transform layer to limit the outgoing record to the fields being updated.

    Delete Page

    This endpoint permanently deletes a page by blog ID and page ID. The deletion is irreversible from the API.

    • Enter the numeric blog ID in the Blog ID field. This field is required.
    • Enter the numeric page ID in the Page ID field. This field is required.

    Because deletion is irreversible, validate upstream data carefully before activating this destination.

    Approve Comment

    This endpoint approves a pending comment, making it publicly visible on the post. Use it to integrate Blogger comment moderation with an upstream review queue or automated moderation tool.

    • Enter the numeric blog ID in the Blogid field, the post ID in the Postid field, and the comment ID in the Commentid field. All three identify which comment to approve.
    • Comment IDs can be obtained from the List Comments by Blog or List Comments source endpoints, filtered to Status = pending.

    This endpoint expects a POST with an empty (or empty-JSON) body. The Nexla template defaults the body to the upstream record as JSON; in most cases the request body is ignored by Blogger for this action.

    Mark Comment as Spam

    This endpoint marks a comment as spam, removing it from public view and adding it to the blog's spam list. Use it to integrate automated spam detection or moderator decisions back into Blogger.

    • Enter the numeric blog ID, post ID, and comment ID in the corresponding Blog ID, Post ID, and Comment ID fields.

    Delete Comment

    This endpoint permanently deletes a comment by blog ID, post ID, and comment ID. The deletion is irreversible from the API.

    • Enter the numeric blog ID in the Blog ID field, the post ID in the Post ID field, and the comment ID in the Comment ID field. All three are required.

    Use Mark Comment as Spam instead when the comment should be hidden but not permanently destroyed — spam comments can be reviewed and restored later, while deleted comments cannot.

Configure Manually

Blogger destinations can be manually configured to send data to any valid Blogger API endpoint. Manual configuration provides maximum flexibility for endpoints not covered by pre-built templates, including custom URL patterns, query parameters, or batch settings.

Using manual configuration, you can also configure Nexla to automatically send the response received from the Blogger API after each call to a new Nexla webhook data source. This is particularly useful for capturing the new post or page ID returned by Create a Post or Create Page, so downstream flows can reference the newly created resource.

API Method

  1. To manually configure this destination, select the Advanced tab at the top of the configuration screen.

  2. Select the API method that will be used for calls to the Blogger API from the Method pulldown menu. Common methods for Blogger write endpoints include:

    • POST: For creating resources (for example, POST /blogs/{blog_id}/posts, POST /blogs/{blog_id}/pages) and for state-change actions like approve, spam, publish, and revert
    • PUT: For full updates (for example, PUT /blogs/{blog_id}/posts/{post_id}, PUT /blogs/{blog_id}/pages/{page_id})
    • PATCH: For partial updates (for example, PATCH /blogs/{blog_id}/posts/{post_id})
    • DELETE: For removing resources (for example, DELETE /blogs/{blog_id}/posts/{post_id}, DELETE /blogs/{blog_id}/pages/{page_id}, DELETE /blogs/{blog_id}/posts/{post_id}/comments/{comment_id})

Data Format

  1. Select the format in which the Nexset data will be sent to the Blogger API from the Content Format pulldown menu. The Blogger API expects application/json for all write endpoints, so JSON is the appropriate choice for every Blogger destination.

API Endpoint URL

  1. Enter the URL of the Blogger API endpoint to which you want to send the Nexset data in the URL field. All Blogger v3 URLs use the base https://blogger.googleapis.com/v3/ followed by the resource path. For update, delete, or state-change operations, include the blog ID and resource ID at the end of the URL — Nexla macros can substitute IDs from each upstream record (for example, {'https://blogger.googleapis.com/v3/blogs/{blog_id}/posts/{id}'}).

Request Headers

Optional
  • If Nexla should include any additional request headers in API calls to this destination, enter the headers & corresponding values as comma-separated pairs in the Request Headers field (for example, header1:value1,header2:value2).

    You do not need to include any headers already present in the credentials. The Authorization: Bearer ... header is added automatically based on your Blogger OAuth credential.

Exclude Attributes from the Call

Optional
  • If any record attributes in the Nexset should be omitted when sending data to this Blogger destination, select the attributes from the Exclude Attributes pulldown menu. This is useful for stripping internal fields (for example, source-system IDs or audit timestamps) that Blogger will reject or ignore.

  • Any number of attributes can be selected for exclusion, and all excluded attributes will be shown in the field. To remove an attribute from the list, click the X icon next to the attribute name.

Record Batching

Optional
  1. If records should be sent to this destination in batched API calls, check the box next to Would you like to batch your records together? to enable record batching.

  2. Enter the maximum number of records that should be batched together in a single API call in the Batch Size field. By default, this value is set to 100.

  3. Select the algorithm that will be used to group records into batches from the Grouping Algorithm pulldown menu. The sample request shown in the panel on the right will be updated to reflect the current batching settings. Some algorithms require additional settings—click on an algorithm listed below to view instructions for configuring these settings.

The Blogger v3 REST endpoints accept one resource per request (one post, one page, one comment action), so batching is typically not appropriate for most Blogger destinations. Leave batching disabled unless you are targeting a custom proxy or wrapper that accepts arrays of Blogger payloads.

Response Webhook

Optional

Nexla can automatically send the response received from the Blogger API after each call to a new Nexla webhook data source. This option allows you to keep track of the status of each API call and any additional information returned after each call — for example, the newly assigned post ID after Create a Post succeeds.

  • To enable this option, check the box next to Would you like to process the API response as a Nexla Webhook source?.

Sample Request Payload

Sample request payloads containing a portion of the Nexset data that will be sent to the Blogger API endpoint based on the current settings are shown in the Sample Payload panel on the right. These samples can be referenced to ensure that the destination and request settings are correctly configured.

  • Click on a sample request payload to expand it and view the complete payload content.
  • Sample payloads are automatically updated with each setting change, making it easy to verify that changes achieve the desired effect.

Endpoint Testing (Manual Configuration)

After all endpoint settings have been configured, Nexla can send a test payload to the Blogger API to ensure that the destination is configured correctly.

  1. To send a test payload, select the Test button at the top of the Sample Payload panel, and click on a listed sample payload to expand it.

  2. If any modifications to the sample payload are needed, make the necessary changes directly within the sample window.

  3. Click the Send Test Data button at the top of a sample payload to send the test payload to the Blogger API using the current settings.

Important

Test payloads are sent against the real Blogger account associated with the selected credential. To avoid accidentally publishing test content to a production blog, point the destination at a sandbox blog (or use the Is Draft flag where supported) when running tests.

Save & Activate the Destination

  • Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured Blogger endpoint, open the destination resource menu, and select Activate.

    The Nexset data will not be sent to Blogger until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.