Tech TutorBangla Web Documentation
Portfolio
HomeHTMLCSSTailwind CSSJavaScriptTypeScriptReactNext.jsNode.jsExpressSocket.IOExpoWordPressPostgreSQLPrismaPostgresNestJSMongoDBDockerTanStackTanStack TableRTK QueryGitGitHub
  • RTK Query Documentation39টি অধ্যায়
প্রযুক্তি নির্বাচন
HomeHTMLCSSTailwind CSSJavaScriptTypeScriptReactNext.jsNode.jsExpressSocket.IOExpoWordPressPostgreSQLPrismaPostgresNestJSMongoDBDockerTanStackTanStack TableRTK QueryGitGitHub
  • Redux Intro
  • Architecture
  • Redux Toolkit
  • Project Setup
  • Folder Structure
  • configureStore
  • Redux Provider
  • createSlice
  • Reducers & Actions
  • Typed Hooks
  • Selectors
  • Devtools
  • RTK Query
  • createApi
  • API Middleware
  • API Tags
  • Fetch List
  • Fetch Detail
  • Mutation — Create
  • Mutation CRUD
  • Cache Invalidation
  • Cache Lifecycle
  • Polling
  • Query Selectors
  • Optimistic Update
  • Cart Slice Full
  • Cart UI
  • Local vs Server
  • Listener Middleware
  • Error Handling
  • Loading States
  • Serializability
  • SSR Prefetch
  • Complete Flow
  • Complete Project
  • Production
  • Common Mistakes
  • Best Practices
  • Interview Q&A
  1. Docs
  2. RTK Query
  3. createApi — প্রথম API Definition
RTK QueryIntermediate

createApi — প্রথম API Definition

createApi + fetchBaseQuery — endpoint definition — বাংলায়।

6টি অংশবাংলা ভাষায়
src/features/orders/ordersService.tsts
ts
import { createApi, fetchBaseQuery } from "@reduxjs/toolkit/query/react";

export const ordersApi = createApi({
  reducerPath: "ordersApi",
  baseQuery: fetchBaseQuery({ baseUrl: "https://api.example.com/" }),
  tagTypes: ["Order"],
  endpoints: (builder) => ({
    // Query: GET https://api.example.com/orders
    getOrders: builder.query<Order[], void>({
      query: () => "orders",
      providesTags: ["Order"],
    }),

    // Mutation: POST https://api.example.com/orders
    createOrder: builder.mutation<Order, { items: CartItem[] }>({
      query: (body) => ({
        url: "orders",
        method: "POST",
        body,
      }),
      invalidatesTags: ["Order"],
    }),
  }),
});

// Auto-generated hooks
export const {
  useGetOrdersQuery,
  useCreateOrderMutation,
} = ordersApi;

builder.query vs builder.mutation

builder.querybuilder.mutation
কাজডেটা পড়া (GET)write (POST/PUT/DELETE)
Generated countsloading/error/datapending/error, আর no cache-শেয়ার
লাইফসাইকেলcache-ভিত্তিক, refetchtrigger-সাথে-সাথে, onSuccess

Types

Typing endpointts
ts
getOrders: builder.query<Order[], void>({
  // ↑ <Result, Arg>
  query: () => "orders",
}),
reducerPath গুরুত্বপূর্ণ

reducerPath store-এ এই slice-এর কী। configureStore-এ [ordersApi.reducerPath]: ordersApi.reducer ও concat(ordersApi.middleware) — দুইটাই site-এ বাধতেই store-এ যুক্ত করতে হবে। ভুলে গেলে hooks কাজ করবে না।

শেষ প্যারায় নিজে practice করুন — কোড কপি করে নিজের এডিটরে চালিয়ে দেখুন।
আগেরRTK Query — Server State SimplifiedপরেরRTK Query Middleware — Store Integration
এই পেজে
Tech Tutor

বাংলায় ওয়েব ডেভেলপমেন্ট ডকুমেন্টেশন শিখুন — ধাপে ধাপে।

Homeসব ডকুমেন্টেশনQuick Startআমার নোটস

© 2026 Tech Tutor. বাংলায় শিখুন, বাংলায় গড়ুন।

mdanamolhasan1998@gmail.com