> ## Documentation Index
> Fetch the complete documentation index at: https://reach-owl.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Grow Instagram Profiles with Automated Engagement

> Create ReachOwl profile growth tasks to automatically react to and repost Instagram content from hashtags, growing your follower base.

ReachOwl profile growth tasks help you grow your Instagram presence by automatically engaging with posts from hashtags. This guide covers creating a growth task, updating its schedule, pausing and resuming, and reviewing results.

<Steps>
  <Step title="Create a profile growth task">
    Send a POST request to set up a new task targeting a hashtag. You can enable reactions, reposts, or both.

    <CodeGroup>
      ```bash Request theme={null}
      curl -X POST "{{baseUrl}}/api/v1/profile-growth" \
        -H "Authorization: Bearer {token}" \
        -H "Content-Type: application/json" \
        -d '{
          "name": "Daily Hashtag Growth",
          "team_id": 3,
          "type": "instagram",
          "source_type": "post_hashtag",
          "post_url": "digitalmarketing",
          "executor_ids": [101],
          "engage_react": true,
          "engage_repost": false,
          "limit": 15,
          "status": "running"
        }'
      ```

      ```json Response theme={null}
      {
        "id": 55,
        "name": "Daily Hashtag Growth",
        "status": "running",
        "limit": 15
      }
      ```
    </CodeGroup>

    <Note>
      Profile growth uses string statuses: <code>"running"</code>, <code>"paused"</code>, <code>"draft"</code>, or <code>"completed"</code>.
    </Note>
  </Step>

  <Step title="Update the schedule">
    Add or update the timezone and daily window when the task is allowed to run.

    <CodeGroup>
      ```bash Request theme={null}
      curl -X PATCH "{{baseUrl}}/api/v1/profile-growth/55" \
        -H "Authorization: Bearer {token}" \
        -H "Content-Type: application/json" \
        -d '{
          "timezone": "America/New_York",
          "schedule": [
            {"day": "monday", "start": "09:00", "end": "17:00"},
            {"day": "tuesday", "start": "09:00", "end": "17:00"}
          ]
        }'
      ```

      ```json Response theme={null}
      {
        "id": 55,
        "timezone": "America/New_York",
        "schedule": [
          {"day": "monday", "start": "09:00", "end": "17:00"},
          {"day": "tuesday", "start": "09:00", "end": "17:00"}
        ]
      }
      ```
    </CodeGroup>
  </Step>

  <Step title="Pause or resume">
    Update the status field to pause or restart the task.

    <CodeGroup>
      ```bash Pause theme={null}
      curl -X PATCH "{{baseUrl}}/api/v1/profile-growth/55" \
        -H "Authorization: Bearer {token}" \
        -H "Content-Type: application/json" \
        -d '{"status": "paused"}'
      ```

      ```bash Resume theme={null}
      curl -X PATCH "{{baseUrl}}/api/v1/profile-growth/55" \
        -H "Authorization: Bearer {token}" \
        -H "Content-Type: application/json" \
        -d '{"status": "running"}'
      ```
    </CodeGroup>
  </Step>

  <Step title="View results">
    Retrieve the task and its engagement history by adding the `include_posts` query parameter.

    <CodeGroup>
      ```bash Request theme={null}
      curl -X GET "{{baseUrl}}/api/v1/profile-growth/55?include_posts=1" \
        -H "Authorization: Bearer {token}"
      ```

      ```json Response theme={null}
      {
        "id": 55,
        "name": "Daily Hashtag Growth",
        "status": "running",
        "posts": [
          {
            "post_id": "abc123",
            "reacted": true,
            "reposted": false,
            "engaged_at": "2024-01-15T09:23:00Z"
          }
        ]
      }
      ```
    </CodeGroup>
  </Step>
</Steps>
